{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "12f29c79",
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "import torch.nn as nn\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import scipy.io\n",
    "from sklearn.model_selection import train_test_split"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "aa969264",
   "metadata": {},
   "outputs": [],
   "source": [
    "import torch\n",
    "import torch.nn as nn\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import scipy.io\n",
    "\n",
    "\n",
    "# Define the LSTM model\n",
    "class LSTM(nn.Module):\n",
    "    def __init__(self, input_size, hidden_size, output_size):\n",
    "        super(LSTM, self).__init__()\n",
    "\n",
    "        self.hidden_size = hidden_size\n",
    "\n",
    "        self.lstm = nn.LSTM(input_size, hidden_size, batch_first=True)\n",
    "        self.fc = nn.Linear(hidden_size, output_size)\n",
    "\n",
    "    def forward(self, x, hidden):\n",
    "        output, hidden = self.lstm(x, hidden)\n",
    "        output = self.fc(output)\n",
    "        return output, hidden\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "0f551f19",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(1, 201)\n",
      "(1, 101)\n",
      "(101, 201)\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "<Figure size 432x288 with 0 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1080x360 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Load the .mat file\n",
    "mat_data = scipy.io.loadmat('Allen_Cahn.mat')\n",
    "\n",
    "# Following is the code to plot the data u vs x and t. u is 256*100\n",
    "# matrix. Use first 75 columns for training and 25 for testing :)\n",
    "\n",
    "# Access the variables stored in the .mat file\n",
    "# The variable names in the .mat file become keys in the loaded dictionary\n",
    "x = mat_data['x']\n",
    "t = mat_data['t']\n",
    "u = mat_data['u']\n",
    "\n",
    "# Use the loaded variables as needed\n",
    "print(x.shape)\n",
    "print(t.shape)\n",
    "print(u.shape)\n",
    "\n",
    "X, T = np.meshgrid(x, t)\n",
    "# Define custom color levels\n",
    "c_levels = np.linspace(np.min(u), np.max(u), 100)\n",
    "\n",
    "# Plot the contour\n",
    "plt.figure()\n",
    "plt.figure(figsize=(15, 5))\n",
    "plt.contourf(T, X, u, levels=c_levels, cmap='coolwarm')\n",
    "plt.xlabel('t')\n",
    "plt.ylabel('x')\n",
    "plt.title('Allen-cahn-Equation')\n",
    "plt.colorbar()  # Add a colorbar for the contour levels\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "88b76c79",
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import scipy.io\n",
    "from sklearn.model_selection import train_test_split\n",
    "\n",
    "# Load the .mat file\n",
    "mat_data = scipy.io.loadmat('X.mat')\n",
    "\n",
    "X = mat_data['X']\n",
    "\n",
    "mat_data1 = scipy.io.loadmat('y_pred.mat')\n",
    "\n",
    "u1 = mat_data1['y_pred']\n",
    "\n",
    "np.set_printoptions(threshold=np.inf)\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "f35d35a0",
   "metadata": {},
   "outputs": [],
   "source": [
    "u1 = u1.reshape(101, 201)\n",
    "u1_new = u1.T"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "bbdcc6b7",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 432x288 with 0 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA0MAAAFNCAYAAADCVbS2AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAAB37UlEQVR4nO29e7xtZ1nf+33WnGvtgES5RC4JSFCDgqCgEfRYlRJE6rHEVooBL2BDU1vRVisFigc4UWy8Unqk1i1E4jUgtbip0XAzR61gEyoKSQ8Ywy0hEhICagnJXnM9548x5ppjjjku77jNMcYcv+/nsz97rzne2xhzrrXe737e93nN3RFCCCGEEEKIqbHX9wCEEEIIIYQQog8kQ0IIIYQQQohJIhkSQgghhBBCTBLJkBBCCCGEEGKSSIaEEEIIIYQQk0QyJIQQQgghhJgkkiEhhGgRM3udmf14/O8nmdnNfY8piZm93Mx+re9xdIGZXW9mT+p7HEIIIcaDZEgIIWpiZteY2Z1mdqLvsfSFmX3IzO4ys79L/Pn5LfR7LJ1L3P3L3P2arvsWQgixO0iGhBCiBmZ2LvD1gANP73c0vfMP3f0+iT/P73tAQgghRAiSISGEqMf3AO8CXgc8J6SCmZ1tZv/FzD5hZh80sx9MXHu5mb3BzH7FzP42XvJ1fkFbMzP7d2b2V3H5d5vZw+JrrzKzj5rZ38Svf32q+kFeP3Gk50fM7C/M7NNm9nozO6PCc0mP8WfM7HYzu8nMvt/M3Mzmib6eknoGv5b4+rfM7K/jcfyhmX1Z/PolwHcC/zaORL053Z6ZnTCz/2BmH4v//IdlBG+5fNHM/o2Z3WZmt5rZ99a5RyGEEONGMiSEEPX4HuDX4z/fbGYPKipsZnvAm4E/B84BLgD+tZl9c6LY04ErgfsCp4Ci5WY/DDwL+Bbgc4F/CnwmvnYt8Djg/sBvAL+VEpqyfp4JPA14BPDlwHOL7q2AfwZ8K/B44HzgGRXr/x5wHvBA4H8SPWvc/WT875+KI1H/MKPuS4CvIXoOXwE8AfjRxPUHA59H9F5cDLzazO5XcXxCCCFGjmRICCEqYmZ/D3g48AZ3fzfwV8CzS6p9NfD57n6pu9/j7jcBvwRclCjzx+5+lbsvgF8lmsTn8TzgR939/R7x5+5+B4C7/5q73+Huh+7+s8AJ4Esq9PMf3f1j7v5JIoF7XMm9vcnMPpX488/i158J/Ad3/2jc1r8vaWcNd7/c3f/W3e8GXg58hZl9XmD17wQudffb3P0TwP8NfHfi+un4+ml3vwr4O9afkRBCiAkgGRJCiOo8B3iLu98ef/0blC+VezhwdlIagH8HJCNKf53492eAM8xsbmbfmUhO8Hvx9YcRSdgG8TK3/xUvL/sUUQTkrLJ+Cq7fJ2739xLj+M5EmW9z9/sm/vxS/PrZwEcT5T6cNd6ce5iZ2WXxMsC/AT4UXzqroFqSs1P9fTh+bckd7n6Y+Pr4PoUQQkyHeXkRIYQQS8zsXkQRj5mZLaXhBHBfMyuK5HwU+KC7n1e1T3dfLsdLt/dFwPtS4/t64N8SLcO73t2PzOxOwKr2mzGOf1Cxyq1E0rbkC1LX/zdw78TXD078+9nAhcBTiETo84DkfXhJ3x8jEtDrE31/LHDcQgghJoIiQ0IIUY1vAxbAo4mWjz0OeBTwR0T7iPL4H8DfmtkLzexeceTjMWb21TXH8Rrgx8zsPIv4cjN7AHAmcAh8Apib2UuJ9hT1wRuAHzSzh8b7cV6Uuv4e4CIz24+TOCT3FJ0J3A3cQSRMP5Gq+3HgCwv6/k3gR83s883sLOClwE6erySEEKI+kiEhhKjGc4BfdvePuPtfL/8QJSH4TnIi7vH+nG8lkqcPArcTCU3oHpg0P0ckG28B/gZ4LXAv4Grg94EPEC0N+yzrS9W64M22fs7Qf41f/6V4PH9OlADht1P1/i+i6NadRHt6fiNx7VeIxn8LcANR5r4krwUeHS85fFPGmH4cuA74C+C9cf8/nlFOCCHEhDH3spUGQgghRHMsOpvpg8B+ar+OEEII0QuKDAkhhBBCCCEmSa8yZGaXxwfevS/nupnZfzSzG+MDAL8yce05ZvaX8Z+gAw+FEEIIIYQQYkmvy+TM7BuIznb4FXd/TMb1bwF+gOhQwScCr3L3J5rZ/YnWgp9PlFHo3cBXufudWxu8EEIIIYQQYtT0Ghly9z8EPllQ5EIiUXJ3fxdR6tqHAN8MvNXdPxkL0FuJTksXQgghhBBCiCCGvmfoHNazIN0cv5b3uhBCCCGEEEIEsfOHrprZJcAlAHuzM77q3vd5eM8jEkIIIYQQu8zfffr9t7v75/c9jjK+avY5/je+qFzvRr/7anffiVVZQ5ehW1g/vfyh8Wu3AE9KvX5NVgPufhI4CXDm/b7Uv/LvX97FOAs5WlT/kAkhhBBCiHHyx6e+4cN9jyGEv/EFrzrj3Mr1/s+73n9W+6Pph6HL0Cng+WZ2JVEChU+7+61mdjXwE/GJ5gBPBV5c1piZMT8Iu+XDe9o7AmNvNmutrSpIwoQQQgghhMinVxkys98kivCcZWY3Ay8D9gHc/T8DVxFlkrsR+AzwvfG1T5rZjwHXxk1d6u5FiRiWHTLb3wdgcfp0YdFQaapCm4IVQlcSJskSQgghhBg/tmfM7lVjvnhX+2Ppi15lyN2fVXLdge/PuXY5UHvN21KKmlAmVGnaEqxtS1WatiRLUiWEEEIIIfpk6MvkWsXMmNWYyC9yJu1NhKqqSCVpIlV9i1SSJlIlkRJCCCGEaIbNjP0za8zHytdjjYbpydB+8S0vTm/KQpsCddxmTZFqIlFQX6SGJFFQX6QkUUIIIYQQYsmkZAiD2XxzEr04XE2Qy2Rpo26GPEE1gSoTp7V2K0hUU3FKUlWihiZPS6pIlMRJCCGEEGK3mZQMRZGh1WR4cTqa7GYJUh5JcYJq8jQVcYJweRqqNIHESQghhBC7je3B/D79ZD0eCtOSISLxWApFUoyKWEoThItTWpqi/sIed540Qbg4VZEmCBcnSVM2oeIkaRJCCCGEGA6TkiHMgOpCESJNSWGCMGnKEqaov/K3pUiYQNI0VCRNQgghhBDDYVoyBMwDxOZwuXyuZOKaFIkxChNUu8cqlElT27K0pEyahi5LS0KkScIkhBBCiEaYMdvf63sUvTIpGSrLJreUhzJhCpUlqCZMaVmCcmHKk6Wov+qZ8zbaqHiPoYREmLoQppAI064Ik2RJCCGEEKKYickQzGbZ9rtYHAXLQ6gsQbvRpSHKEhTfY93IEhQLU1eRJSgWprGIEkiWhBBCCCHKmJQMYZYpMoenF7mStKQPWUqLxBhlScvwhkuRLEmUhBBCiN3H9mB+xrR0IM2k7t6AvZT0HC2OguSlSJYWiyOgWB6S4lDUX92oUtR/gVhliBIUy1KRKEX9hd1vYRuKKg0SRZWEEEIIMQWmJUMZkaGy6WmZLG0zqnSYTsDQUlRJopRoV6IUhKJKQgghxPgxM2YHSqAwHQzmiYwZh6fLRScdSUoSIkqQv08JqkWVJEqJNiRKgyVPlCRJQgghhBgak5IhMyuN4izpW5SWkgQSpVV/EqU0YxIlRZOEEEIIMTQmJkMwn0fycXh4VCgi84Kc60WitBSPPFE6iiWnydK7EFGqs0cJ8kUiSyKGIkqhkgQSpaEiURJCCCF6wIz5iUnpwAaTu/vZzFgs/FiKqlIkSm1EkyBfXtpedlfUV7K/qM9qEpEnSnmSBPmitI1oElQTwSrkiVKXkgT5ojQmSQItuxNCCCFEd0xKhswslqCj3DJFolQUTSpjDMvu0uJQJmXH7WnZXS0UTWqGoklCCCHEMDGzpwGvAmbAa9z9stT1LwCuAO4bl3mRu19lZg8A3gh8NfA6d39+os4rgO8B7ufu92lrrBOToejvYtmxghYKls7VXHZ3eDosGlR32V2f0aSo336W3ZVJUtSflt2lUTRJCCGEmA5msFdyJmX1Nm0GvBr4JuBm4FozO+XuNySK/SjwBnf/BTN7NHAVcC7wWeD/Ah4T/0nyZuDngb9sc7yTk6G6y+OKRKluNKnJ3qTo+jSiSVH/1Zbd9R1Ngt1adqdokhBCCCECeQJwo7vfBGBmVwIXAkkZcuBz439/HvAxAHf/38Afm9kXpxt193fF7bU62EnJEFBbaOpEk7rcmwSKJkX9K5p03K6iSY1QNEkIIYRohXOAjya+vhl4YqrMy4G3mNkPAJ8DPGU7Q9tkWjJkxnxexybrHkbV/t6kLqNJoZnuQNGkzb4UTUqz69EkSZIQQoixY3vG/EStZXJnmdl1ia9PuvvJCvWfRbQn6GfN7GuBXzWzx7h7/uS5IyYlQ0Z2ZCgSk2xJOjz0yUSTxprpLupX0aQ6KJpUHy25E0IIMWFud/fzc67dAjws8fVD49eSXAw8DcDd32lmZwBnAbe1PdAypiVDxob0FMlOM3YjmtTWuUmgaNJmX4ompdn1aBJIlIQQQgwIM2YFv3trci1wnpk9gkiCLgKenSrzEeAC4HVm9ijgDOATbQ8khEnJEMDGfLxg2Vx5VGj40aSydOBTPTcp6lcHzNZhaNEk2A1RkiQJIYTYBdz90MyeD1xNlDb7cne/3swuBa5z91PAvwF+ycx+iCiZwnPd3QHM7ENEyRUOzOzbgKe6+w1m9lNEUnVvM7uZKGX3y5uOd1IyFEWGVl8fHmbIUcziaDOKtKo3nmhSF+nAQdGktfI6YHbVrg6YrY2iSUIIIXYFd7+KKF128rWXJv59A/B1OXXPzXn93wL/tr1RRvQqQwEHMr0S+Pvxl/cGHuju942vLYD3xtc+4u5PL+8P5rHEHC58TYw2KJpD7Xg0qQxFk7L6HG40KepPB8ymkSgJIYSYOl2cMzQ2epOhkAOZ3P2HEuV/AHh8oom73P1xlfoEZjNYLFZSlEWRKNWNJnXHcPYmldH3uUnQnSi1FU2K+teyu+N2JUqlSJSEEEKI+vQZGQo5kCnJs4CXNeox9pSCuUOhKDWJJtVddrftaFKElt1lltGyu/x2JEqDRKIkhBBCFNOnDIUcyASAmT0ceATwjsTLZ8T5zQ+By9z9TSGdFkUCDxfFonRsU5l1u1l21w3FQqNld5vjg+0uu4v6TZUdSDQp6k/7k7KQKAkhhBgVZsxPTCqFwAZjufuLgDe6e/I39MPd/RYz+0LgHWb2Xnf/q3RFM7sEuATgAQ/6guIlbj2IUtGyO2BQolRMvWV3TdjlZXdRv7stSkX3B/VlqSiaBIoohSBREkIIMRX6lKGQA5mWXAR8f/IFd78l/vsmM7uGaD/RhgzFp+GeBPjCLz3f5zPfaPxwYYVC0kSUyvYnRdkEc9qVKNVGopQoO0JRAi29GyoSJSGEELtEnzIUciATZvalwP2AdyZeux/wGXe/28zOIkrN91NlHUbZ5FbycbiIZCJLkJJlmohSORKlPCRKEqXcdiRKg6RIlECyJIQQQyPKJtf+XGtM9CZDgQcyQSRJVy4PYop5FPCLZnZENAu/LJmFroi9+P0+OiqXIOhWlJosvSsSpajxgms7IErN2q1PU1FattFUlGAlD32IUtR/RvKHkv8ZKJIliVI2uyJKoKiSEEKI4dHrnqGyA5nir1+eUe9PgMdW7S+pAHsF8+gyUYJIhIYrSlAoS1sWpfncODzMHs9sNmOxyL42n+9xeFgkRPWy3hVRlvWujLKpaUhUqSx1eZWoUoiYLRlyevBQMSyjD1GC7mSpSJRgXLIkURJCiB6wPWYHxb/Ddp2xJFBojflegcAcRSJQJkpQHjEqk6lymWlKzahSwdxpdmAscvyjSHia0UVUKb/NcgGrz5ijSlWTHYwxqtRVQgdQVKkpWn4nhBCiKyYlQ2bOLEOGFrEEFYkSRLJUJEow/qjSfBZlv8tvvKDZmlGl2cwKokPtR5Xmc0qEp5+1s7saVYr67W+v0jaiSjC+7HdTiSqBZEkIIUQ+k5IhWBeeZSQoS5CSbFuWyhlmVGlOlNghi6KoUld0IUtFbXZN2dS07Js5VJbaiCot+1sy1r1KUX+SpSwkS0IIMX7MYK/k9+CuM6m7t9QcP0RuQLKUJIriFJVoX5aKo0P5UaXyutuVpbIleLPZ3nHkpg5jlaUyiYj6TYiVZGm93YHKEoxHmCRLQggxXSYlQxAuNjBdWZrtURjFiZbS5dQtkaWiZXhNZAmoJUxDkqUy+palEPqILEX9hstSNIZUNCogP36eMJXdb9RfuRT0JUug6FIZZbIEEiYhhBgrk5IhA2Z7m5PJxdHKQMrEJiofJjcQCU5om23IEsC8LO12EPWjS0WyBMXCVCZLsN3oUh+yBNRqt0yW5vt7HJ4ukKn92UYq7o02Cq+GEiYPZbIE4dGlXViKVzWCVgVFl5qj6JIQYpSYsdfswMzRMykZAme+d8Th0bpRZAlSmirC1EV0KZQQYWpDliJpyRemoUaXIHtcRdGl2Syul9Fncb18sVkeJtvFUryidpsK0zaiS6EtVRGmtpfiRf2PL7oE9YRpyNElGIcwhUSXQNIkhBDbZmIyFDEPkJ8mwtRFdCm03RAOA6I+fQvTcl5ZJExApjSt6u6uMM3j79w6EaYmwrQ8gylXmGKJKIowHcz2OGolm8b2hQlWMjFEYYr6LBaDPoUJupGmEGECSZMQQohNJiVDZjCz7Anywtcn7SHCBOvS1LYwReXLl8+txhK2JC+IvZWE5XGw58fnLuUxn3mhEHUdYYL6wgTZ0tSlMGXVTU5e03WXYhPVqyZNTYUpqpsvTU2W5G1TmEKpk/AhRJhgXZpChAm6jTJVFcMqSJraQdIkhGgDM2Mv8GfjrjKpuzecmS1Y+OYvkTxJSlNHmqoKE3QnTa0KE+1EmUKECfKlaZkArU6UaSkoUF2akt88aWlaClPWuIrEJzmmbUeZsq4XiVhZuyHCBPWjTAdx+0XSNA/YBxWXDCgTRldRJmhPmrYZZQJJU59ImoQQfWBmTwNeBcyA17j7ZRllngm8nCgV8Z+7+7Pj158D/Ghc7Mfd/Yr49e8AXhK3+d/c/YVtjHVSMrRkZmE/9NuSptAoE6zEqStpapvZnq/tkcokMMoEFEaaJE1540lHi8KiTNl18yNNdaWpLHqVTOedJU7bkqaiNqJxHgRl85vtz4PTbVdhsVh0Kk2wKU6h0hT1mX/PodIE1cUpVJqgfXEKlSYYvjiFStMSyZMQO4JV//4vbdJsBrwa+CbgZuBaMzvl7jckypwHvBj4One/08weGL9+f+BlwPlEkvRuMzsF7AE/DXyVu3/CzK4wswvc/e1Nxzs5GcqSmXS0Z1U2/Id9WpxCpSndf9XleaHSBJE4dbE8L4QgaYJScQqVJsiXolBpgpylcIm3Oi1OodIU1U1JQ+LfRdKUHldSfqK6q3aT44nGVE+c6kpT+noTGQuVJsgRp4RI1BWnEGmKxtqvOFVB4pTTdo/iBJInIcSoeQJwo7vfBGBmVwIXAjckyvwz4NXufieAu98Wv/7NwFvd/ZNx3bcCTwNuBP7S3T8Rl3sb8O2AZKgN6orLehvbFacuo00RATm8KzLf89IIEYRHm6CZOCXPayoTp7wyReKUnldWEafNuv2KU3G9dqJN6etF7SbbzGo3fXhsWkyaitNBov0yccprYzXWg8wxbpQbgDjBSp62JU5Rn9n3XUWcoJo8VREnkDyVIXkSYlKcA3w08fXNwBNTZR4JYGb/nWjZ28vd/fdz6p4D/D7wJWZ2bvzatwEHbQx2UjJkOLO98h+wi6P8H9pVxAWy5WnI4gSRPHUlTqERomVUqkyelpGuwjYTw8tr7yARBasrT9sSJ1iXp6w5aVKe0t/kSXmqIk5RXc8cTzQmD6i3OdhQyakiTlXarSJOkCFPqaVrTeWpLXGCsHTc4fuq6rE4vagkTjAceYJwgaoqT9CuQE1dnkACJUQt6idQOMvMrkt8fdLdT1aoPwfOA54EPBT4QzN7bF7heCndvwBeDxwBfwJ8UeVR5wxEpAgRpiRdylMVcYrqr8ZSt++q8lSd3ZenpDjBphxtyk/qfc94RGuikilAifo15SnrB0KRPCXHtW15SgvOqu5RfD3/WtV2i+QpqpuQtv2M+kmBytj3k5SRg4z20wKVTheeJzNLeUqPcaNcQjbKBCp0qeBqDLPah8FWZSlRVeXpuH7GvQ9NoKAdiaoqT0uGLFFN9j1IpISozO3ufn7OtVuAhyW+fmj8WpKbgT9199PAB83sA0RydAuRICXrXgPg7m8G3gxgZpcArXzjTkuGrJlc5FFVniBfoKoKDKwLVNX7i+rPGvVdVZ6yDr4tIkqvHVY+SHZgbT9UkUAl91jltpkaWlZ7B6n9V2mBSssTtCtQef8xvxSobFkpq1suUFnytBxXlgRFdT1zPNGYvLAe5E9eo7r5ApUlT8trRW1CuZgNUaDSbSxJClR6nGvlUsJRJFGhSwZXY1hmRhynRNURqOO2Au55jBIFuytSIJkSIsW1wHlm9ggiubkIeHaqzJuAZwG/bGZnES2buwn4K+AnzOx+cbmnEiVawMwe6O63xdf+JfDMNgY7KRmyGgeJ1pELKJeoOgIF2RLVh0BFbcxq9Q1ADYECgiVqlTmuvHyQ8FBPoHLbrCFQsC5RWQIF65KUHQVKvPctCxREElW0Kupw4bk/eA4P8wUqGlvBc895HtGYiiWqjkBFdfM/x2USVdZulkBFdePIV4ZAQUKicjLPSaKyxjTbOCA3lMXhorZEwXZFqq5EQf8iBbstUyChEv1gZuw1+NmQhbsfmtnzgauJ9gNd7u7Xm9mlwHXufiq+9lQzu4EowvMCd78jHtOPEQkVwKXLZArAq8zsKxKvf6CN8U5KhgBmVn8J2MIrRDNqCkbUT8Gyu5YkqrbEsBKpJvcYfW/UqDVb5CaxyKKuREGxSAUJz/EYUkvmMspmZfkLkais9ppKVLHIWKZALVkcldXPl6jyvvMlCmC2V0+iTpzYzKS3VjfnYF4ouZeaElXW7mJR/FmezfLbXiyOciUKYpEqSN+9FJIsiYJ1kcqSqGQbq/Fu7n/NEqks4cgTqVCBWx9HMntilUQL/YkUrD+DJiIFxffdRKSO228oVE1lCnZfqEBSJYaBu18FXJV67aWJfzvww/GfdN3LgcszXn9W+yOdoAw1oYlIQbhMdSFSdSXquN2ETDURKYhkatsiNZstjvsOJbn8r0ym0nPDKiIVlc9IyJCT2jwtP3np0tfaLBj+sr0siVpydBwtyi9zuLBCmYFiYQFYFNQ/gWWeAXV8/WAzK9/6+PLHfuLANrLyrbDcs6lOnIjbrihTJ04sD6vNrnfixKxQwqK62YM6cWJWIFv5B/NGdYtF7cQZ89LkDbnnQcXsFdk0kVDlidSqj3hZW4ZIJUmOtUg60lIVKnLHbedGAMsiNamMiTWkajafZR6sW5XF6cPGMnXcVs59tyFUx33UFKs2hCrJEOWq7TNjkki0xC4yKRkyYNZwr9WiZkQDmssUlAtVM8lY9pGxFK+hTMFKqJrK1MwOK0nNet14LAF7wdbqzVb3H9J31j6qIqHKXq6WXT5IfsiXqWgsyaVyBRP5ZbkSjz88skKZgkioimQK8lOcLzmxX1JmfzNT33FdLO4j53o8ry77XZ8lVSfipX3ZQpV/sO5SpqK69YQqq+6JE/lnRCXJEp9k3WwxKheq/LqRUEX160vVwRn7Qcvmig7aXfWzCJaqsihOqFQt+01TJCPFUZscGasgV8mMf03lqos08On7b1Os1vqpKFlty1WaoclWl6KVheRrC5hhW35fh8akZKgNmspUkjpi1YZQHfefI1ZtCNWqj0REqQWhOqYgg18IM4t+wdSRqvQKplCxSgrVqm7R8rrs9zpPqoqXr61fLDt8dylBZQfvLqUq5DDfkKyAewHB04N9Lzx0d0meNJ3YL75OfL1MqqI2UtcSc+qqUnUitVdqXazyU6DDulRFdcPEKilUWXWTYpSuu1lvfVDpuptyVCxs66KYIW1nJDLgNRSrqEzxGxYiVgRK2mJxFLQ8LikUodGyJG3LVTSmwEx5GWHiJpJVJV18VZLPoivJOu5rYLKVZGjiBduXrzwkZbvNxGTI2aspE0cV9guF0qZYLakiWG2KFWTLVZtitepn1ppYLZ9WUXr00jZs/RdIFcHK2hpSmnwjQ6rK+i7L+JcWrJKVTMdyFSJBUXkrFSuAE5SnR0+2WcTBvDjd+sF++dlSSbLk6cR+QZmMOVVyPn2CzfaSc8UTGcGKUMFKi9Xx9UNIi1V6bGmxWtUtFqwssUrWTctRsm4Rh4dHuXVXklTcdv49rd6QpFyt6leXrKVcrco0iGAl2ipr5+CM6O+yMSepIharpYlhPyuzZKtIslZjKllaWLIWt45w5YlpF+K1zVTzacpEbJviVcbQxGwoUtYFUQKF4bz3fTDtu69AXYkKpS3Z6kKwlpSJVttytdZ34vl0IVirPUXNf+ClW6gqWmm5WmurRLQK9t3H9XP2lBUIVlbfVdKpR4f4BhdnViHtOpRLUXIe3ES0lnKVZCN5xf5mmSqilZarjTIF1xdH2YK13kbxOIrnaFaw76poz1XcdslzyJetkP1TJZHOiksFq1yvu7drvY1y6UpL1maZsJ+La+JV0Ga6vaVspWldvlL91DkQuIlsJGWs6mHBa+0UfLPVSZrRhpiFiGxfopZmtr/f6qHEQhQxKRnK2zPUZB9QW3QtW0nqileXopUm/Z50KVrpfqpkDQxqM3N5XM1seiXXy8SrSLTW2smQrjLR2mwj3iMWIFpr9Woe+huSMTAZbAk9u2pVPiMylDuWatKVJVrp9rJEK02T5YNhZaLXS8Um4C3fnHOllgmuSUbWwbwl7ReMcV2e8g/gDauf0XdDQQoTqO4lDMoTYqzKhXyfnwhbbphoM0/C0lSRsuM6WYIR0F8dQTvus65s3CtxgHKD/vNoetZWUB8Vha6thB4b4xiI8InhMCkZymObk/w8tilk2xSvLEJkrNf3pF5uhkrkyV1TEQuL8AQcJFyx3+zzr+r9T2bd5BgHy7OlQkWz4h6uItIiVrwdvx0Ryx9LO8sMq7bXvogVL+crbqP4+iJoHGWyUdJH7UhYXL+k//ba6F7MqrVVRZaailr2f2dUEbbi9vOpI2/HdVuIEjURujTBcnGvsp+MqXY7kL7SPlvIzDhGrEEUdBfoVYbM7GnAq4jmXq9x98tS158L/DTR6bUAP+/ur4mvPQf40fj1H3f3K7Yy6I4YgpAV0aas9S1jRRz5Xq/vRdESwLbegzpRttIshhWjP9l9xJGkxi2tJgpN9oIlKZOkg7I9VmlBq/C82hK0oL4q1KkiaDBsSYOmEbMV4bJWkmY+4CNSJmxQLm0QOOYS8YIqUtRmW4FCFFiuSt9V243arv7zN1T6NuvV/7lcVQjb7j9NE3kMar+D/WFiPPQmQ2Y2A14NfBNwM3CtmZ1y9xtSRV/v7s9P1b0/8DLgfMCBd8d17yzu1ZnRQSaaCQTYhi5rVSiSiiGL2h5hY+sk2UdL+7SKnn0nSyH3ojXnbS99zKI4IlUzStZE5hJV6wrV2lga7KcbqtBF5buRuqptV2m3TcELL5ufIj6/zeDug+Rv1W4VWakwhgo/gkKEbqP9CuPedj+r/pr9HG5af0mTe8ijrbGF0LW8iXbpcxb/BOBGd78JwMyuBC4E0jKUxTcDb3X3T8Z13wo8DfjNjsZaSBeCNVW2IZa7JHZZtHLWVEfLNkOFrm3243lcF6J4jNXf7Jv7vPe620DcvyDWbLOlaB/0L4lNx1BHFo/7bVS3rtzWq7ft/kJlM7PPQqksS3DS7PPY1vy7zZViXW3PqSLEjfqZwvTODJt3m1J+6PQpQ+cAH018fTPwxIxy325m3wB8APghd/9oTt1zuhqo2B4Sy2Gwi+/DgnknmQjbYJ8esiY1mHf1mnSmYdedCnFN+k7isw0xXu9ve/fbpjyX9tWCXIf31c9nZpv3GEKT/xAQYsnQ13e9GfhNd7/bzP45cAXw5CoNmNklwCUAZ599Nns+zMmQEKJb9rYQEZz57kmk2B76/dQBE5krz44m+rNn2vv+RUv0KUO3AA9LfP1QVokSAHD3OxJfvgb4qUTdJ6XqXpPVibufBE4CfPljH7OduKoYHJqkbo8pTOjGNPHYOxrG+7F3tP3o194W36eun3NXz886GLctOhprB+1aR+u4bNHhZ6/jz7Vte21Y3z+jDid+npGZssn12Pe1wHlm9ggiubkIeHaygJk9xN1vjb98OvC/4n9fDfyEmd0v/vqpwIu7H/JuIUFon10VgSFP/vue7G9rkt/lxL7NZ9jm82g6UW86eW5Sv84ku/YEusZno9aEt+r7UWeSWbVOHZmpMS6v0Y/XPTS0pox4g80+3oIQNOk/zVEH2d3qvId1ONJhsaOjNxly90Mzez6R2MyAy939ejO7FLjO3U8BP2hmTydKxfRJ4Llx3U+a2Y8RCRXApctkCkNF4tEOuyYbkoysfscrF20/szaeRROhaCYD1etWFYjK8lDxPa8kDKHPOXTSWWVyGpSHO6y90Alj8EQ/4BmGTqJDJ+yh7YVOuKtMoqtMhI/uqfZ5PKoxma/aB8BRA6lpQ2IW97TzO+Cow+xxh3cP93d3ZcxgPvRdM93S6927+1XAVanXXpr494vJifi4++XA5U3HIElphuRkO+yymAxdSsYqJIOTkQrvc28SEiogLclHyCQ7SDpKnleIHISIRlk7IRPhkHsOFYqQiX6oQIRKQxVRqCIGVQWgzkS/yQS+iSABLGpIWR6Hd3f3+7DpfYpxMjkVnLL87JK4SFqSfUpYmj4DyQrdyErIc20zUtKCpLQiKA3lpExMQuSmbCJedp9lQtKGiAS10cK9LgkVjiqiUUUw6ky060hEE1loSwbajpws7tnOsQyHnx3m3EJ0y+RkaKxIZLpFElOlzXae1RgjLmMVmFblBdqLspQ9mxaiK32KS9NIStfC0lRWyibOIZISIiihchI6Aa8y4a8qI1VFpK58tCEbbQpG1xKxON3fIaaHf7c7869MzLB9nTMktoikplt2UWokNAV1Byg0OxON2QGZ6TIC00RkupSYpgID5ffWlsCETOhDZaGKtGxDWOrKShuC0raYbEtEhigdp/92eGMS7SMZaoFdERzJTbLfcQnOlJec7bTcbDNSs4UlZmMUmybRmS4jM9uIygxVaKrIzLZEpqnEtCkwXcrLEIRFgjIOzOxpwKuIkqS9xt0vyyn37cAbga929+vi114MXAwsgB9096vj138IeB7gwHuB73X3zzYdq2SoBIlOdyiKE9rmMKI4dSVnW3tqdm452kCiN30uQxub4HS57Gwb0ZpdE5ttS01bQtOVzPQlMmOVl8Vd4xx3VczAZu2eM2RmM+DVwDcBNwPXmtkpd78hVe5M4F8Bf5p47dFEx+18GXA28DYzeyTwYOAHgUe7+11m9oa43OuajnfyMrQLsiPRWfY5vj04YxcdmE40R6KT1X43kZwme23qLk/ra2namCRnjILTt9zsitiMSWimIjED5wnAje5+E4CZXQlcCNyQKvdjwE8CL0i8diFwpbvfDXzQzG6M2/sIkbfcy8xOA/cGPtbGYCclQ+Y+avkZmvRoCVtoexKesPKK7GTSp/CMLKrTZC/OUGVnm0vV2pYdiU51tik5YxAcic1oOQf4aOLrm4EnJguY2VcCD3P33zWzF6TqvitV9xx3f6eZ/QyRFN0FvMXd39LGYCclQ2NhaNIDuxnpkfRk1FWUJ9XelqSn7/06HUnP0CI8fe7RaSo9uyA821y2JtkZvuxIdIaCwbxWNrmzzOy6xNcn3f1kUI9me8DPAc8N7czM7kcUNXoE8Cngt8zsu9z914JHnINkqGckPss+xyU+UZvNn5PEJ11W4rOLS9uGtn9nyJEeSU81hig9Ep4VEp6d5nZ3Pz/n2i3AwxJfPzR+bcmZwGOAa8wMov1Ap8zs6QV1nwJ80N0/AWBmvw38H4BkaGxIfpZ9jkt+FPUJLd/RUrc+srRpmVuterA7ER+JT0ibEp9tIOkRnWEGLSdQAK4FzjOzRxCJzEXAs5cX3f3TwFmrIdg1wI+4+3VmdhfwG2b2c0QJFM4D/gdwBHyNmd2baJncBUAyMlUbydAWkAAt+5QA1WGXsrgp8lPexpQiP30kNGiy3G0b+3skP4m+GsrPmJe5DVl+JD6iDHc/NLPnA1cTpda+3N2vN7NLgevc/VRB3evjTHE3AIfA97v7AvhTM3sj8D/j1/8MCFqWV4ZkqCMkQMs+JUB1UASopL0dEyAolgYJUHx9hAKk6E81hiZAWvIWIQESVXH3q4CrUq+9NKfsk1JfvwJ4RUa5lwEva2+UEZKhDhiaCEmCQtqTBIWVlwStMdL9P0PL9Ka9P0XjKG9HAqQIUBdIgCaC1U6gsDNIhlpEEjQ+CYraHLcITUGCYGB7gUa6FG5XJKi0riSocn/r7W4nxfXQJEgCJAES00Qy1BJDE6E+kAjVRyJU0J6iQan2py1CY44GaTlcoi+J0KCQBIkpIxnaUfo6EHVMjF2EhkilBAlt0tYzDJGlDulyb1BhvwMSoSZUjYAk2UZEqC26ighVRSJUDYmQGCRaJsde3wMQQtSjbra4ydKG6FSMkqUpiwp1RVlUaEiULY+r3W5JVKhr2owKdcFYlsa1zdRFSAghGRJCiK1h7Z/lIEbC3rz8vZ8djGexxuxA04ddQFEhISRDQowWn007rF2ZNpYBjFRmbERLIPY6esZ7++MRjV1mfobeByEGx96s+p8dQjLUEou9Yf2AP+rhg3q01+2E66jlZ9zWM2p6377l96qqRHmFyanPKrxHge+nzwPKtfUMQ6Sh7HmUtFEUHbL9kv4LnoUFRB7q1C2SiKJ72Su4l70GEZCiuiHRlzxmB8XPfm9e/OtyfqL8npqMb72vsHaq9Bcy/l1kfp/t/PzdP3OYk8fZvYY5LiG2iWSoRSREEqK61BUin+3XihBNVojm++XCs6NCZPP9wgjRkISoLDpUV4jKokNDEKLZwTxoudwQhGh2sFdruVzT6NBsv92pi4RomOMS28HN8Pm88p9dQjLUMou9+aCk6GhvtnUpOtrb71SKjvbmrUpRW8+o6X373qyRFHVdp6oQBUtR20IUKkVl18vKdCxEhVJUIkRlUlRUN48yIcq7n739/Vwp2juY54rN3mxWKEVNhKjoXmYH+4VSFCJEZVLR1v6h+YlZkBTtzWfBUhQy/jR1haiJFM3291qVIgnRMMclxDaQDHWEpEhSVJe6UlQnSlS1js9m3UjR3jxIioL/RypEikKjREVlZrNiKSqpXyQRUCJF83ltKSqKEhXVKxOJJlGiOlJUWK9EAEKkKLfufK9xlChEULqIEnUlRU2iREORovl9ZluRov0zZ4OUotm9ZpIiMUmGM1vfUZZCNJRDWZeT/W2eQ7QUg64OZV0KUVuHsrb1jJre91KIqp5DtJSbKqm3k0IUUi8pRCGHsi6FqPQcoqQQFbyfSSEqPJR1KURFz3ApBUXpp8vKJCfrWc8jKR4ZbSQlIiv99lKIMs8hSgpRxrNYik3WWUJLIcpKvZ0UonTdpESkU1YX3UtSiLLOIVqKTdY5REshykq9XVgvcR9Z6a2X95KVejspRFnnECWFKOscoqRM5KWuXo6vKPX2UoiKUm8nhajsHKKQPlftzuM2w36+LoWoaurtpRDVTb29FKI2ziBKClGXqbeXQjS0tNtJIVK2uSlgwSs0dpVp3/0WSUaJhiBGyQjItsQoGS3pQoySUaI2xKitZ9T0vpNRoipiVFVw0vVC6yzFqIoUReUDxajkvQwSo2SUKO8ZlghLcJmlDOQ9jxKxWspEkRRBiRgVSBFsyk0ySlQkRllCVSQTRfeyFKMiKYJNwUlGidJiVFQPiiWgSPBgJUZ5h7MuxSjvcNYyqSiTtmgMqzGGiFGoFBX1uWqzXOySJKNEVcQoGSWqI0bJKFGbYrQNKQKJkRB90KsMmdnTgFcBM+A17n5Z6voPA88DDoFPAP/U3T8cX1sA742LfsTdn761gTdEYiQxitoZthg1iRZFdYrHFyxG6f+xahox2pYYbSlaBBliFBgtgmpiNNRoEVQTo9BoUTSm9brbjBbljS8aR7kY1YkWFfW5and6YrTtaBFIjITYFr3JkJnNgFcD3wTcDFxrZqfc/YZEsT8Dznf3z5jZvwB+CviO+Npd7v64bY65C9L7ivqWo/SemW3IUXp/TdtyJDFK1UvtEQoTnTp1wpfS1YoYQbtiBNlylN5bkyU+VcQINuWopI/0Xpy0UASLEWzIUddiBOtCUXQv6X1FSTlK7w1qK2KU3kOTFoFQMYJNOUrvK0rLUXpPTpZYdCFGUV/535MSo5KxpPYVdSVH6X1FQ5Kj9N4iydGIMauWBXYH6fPunwDc6O43AZjZlcCFwLEMufsfJMq/C/iurY6wByRH3UaN0gkXmspRW8+nqRCmEy5sM2oUUq9K1Cj9Q7mNqFE66UKnUaMQeaoSNcpooyjSkk64UEWO0okTkpKTTriQlKOietBO1CiqGyZH6YQLSTkqlaoCESiSPKgmR2VRI9iUizJxi8aw3kZTOQrpc9VmudwlSSdcCJWjdMKFqnKUTrggOWqO5EiMmT5l6Bzgo4mvbwaeWFD+YuD3El+fYWbXES2hu8zd31TWoZvVGGa/TF2OsrKytSlIkqNUvYzMcl1EjkYhR3WiRrApP2VylJUprULkqErUCPqXoypRI2gnclRXjqpEjaLxhMtRVja6qpEjyVHcj+QIkBwJUZdRxMXM7LuA84FvTLz8cHe/xcy+EHiHmb3X3f8qo+4lwCUA55z9EI4sNVn1cX2DZqXr7lOQslJRb1uQupSjqP36z7et59NUCrNSddcVpKHJUVQ+L9LToRxBvWV1IQLVYFldmVBkpepeE6SW5Ci6fjqzXrJuVnrrrpfVVZGjZN2stNRHgaIH3S+rKxtfNIbN+8sSpLpylNXnqs3NvosEKStVd4ggZaXqriJIWam6mwhSVrruLgQpK133UAQpK2W3BGkoWKUjM3aRPmXoFuBhia8fGr+2hpk9BXgJ8I3ufvfydXe/Jf77JjO7Bng8sCFD7n4SOAnw5Y99jKevp+UIJEhN2bYgbTt6FLU/XUGqEz2qWifrB3MrgpSVPjTjvcw6y6i2INWJHqXLlEWPSupXFaRCOYJjQSqSnOh6ePQoWbdIkIruJesso6UgFUpORpt1o0ewkoEy0cs6y6hK9ChELtoSpKyzjLqIHkXtSpDaQoIk+qJhkrTnAD8aF/1xd7/CzM4E/ijRxEOBX3P3f910rH3K0LXAeWb2CCIJugh4drKAmT0e+EXgae5+W+L1+wGfcfe7zews4OuIkiu0QpYgwbgkSYIkQVq1s7uCFNXJHl8jQYINSco77HVDknZAkPIOej2WpIqCBJHo5B302jSCtC1BgkiS8g56DYkg5R30uryXsQtS1F9qOWHOZ0IRpNR4JEi5h75KkjrErPKB7eVN1k+SZmb3B15GtCLMgXfHde8EHpfo493Ab7cx3t5kyN0Pzez5wNVE1ni5u19vZpcC17n7KeCngfsAv2XRfp9lCu1HAb9oZkfAHtGeoRsyO2qRsUeRsgQJ+pOkLAGA7iQpSxSi/tqRpCxBitqv93zbej5N77tNQYIy4alTJzyKlJcxp/MoUs57uSZJOaKwJkB1BAlWklTSR5ZUQLEkFQoSBEWRqi6xW9YtEouie8kSpKje6XLRKYgiVV1iB2FRpCxBgpUkZQlS1HY0Mc+SC1gXjBBhyRKkaBz1okhNl9hF7Wb/fM0SJCiXpCxBgnBJyhIkqC9JWYIE7UtSliCBJEnUpkmStG8G3urun4zrvhV4GvCby8Jm9kjggaxHimrT654hd78KuCr12ksT/35KTr0/AR7b7ejC2NUoEkiSJEn5ZAkSDEeSRh1FgmqSFCJRHUpSrSgSwOFh61GkZd1tS1LbUSSIpKBOFAmGKUnbjCJF7UqS2iBPkmAYoiRJGixNkqRl1T0nVf4i4PXuvrH9pQ6jSKAwRvIkCcYjSnmSBP2I0lAkKeqzuShNSZKgXJT6lKSozvr4is5d2BClgu+VpCjlSRKkRKlLSUqW6UGSIBalGpJUhh+eHowkAXBPwWAP8i8d3XNYS5KiMR3mShJEopQnSVH7R7mCASvJ6FqSor4S+7YKPhNZotSWJEGxKOVJEoSJUp4kQT1RypMkmJYo5UkSSJQ2qL9M7qw4q/OSk/E+/YrdZyZJK+Mi4Lur9pWHZKgHJErtkicBS7qQpS5FKU+SorarP9ui51Pl2TS957qiVPRDOl966tTZsigFRpMgIUpFn/WjEoGBcFEqyiy0WJTWzxMLCBCl/JYbiVIR+dNRKJqOFtbrSJSKGIIohUhLniRFY+hWlEJEL41EqTpjFSWQLFXgdnc/P+dakyRptwBPStW9JlHnK4C5u7+79shTSIYGRpEowThkaUiiBO3JQHh//YhS1H6159uWSA5RlCBbfOrV6UCUSt7LyhGlIYhSAEWnvTUSpZK26zKbzzYOkT1mf76RPvu43my2ceZTMB2IUhl9i1LUxqJQlKJxRM+7DVFa9rmkaPxRu5vv9RBFCarLUpEoQbuyVCRKMGxZkigFUztJGlEugZ+Ik6UBPBV4ceL6s0jsH2oDydDIGLssFYnSkm0K07ajSkXSEPU3nqhS1Gb582l6z0WiBNuNKmXVKzufISlLRaIUla0uS0WiBLEslTxDjkqiPRCJUEiZBlGlpjJTJEs2n6+dmbR+rUB4SiicktaUpb39/bUzk9b7m6+l9l67dq/ZWkrwKuzNZ4UpsMsp/j6el0w32pSlIlGK+tqOLBWJEuTLUpEoHfdVIkySpW7YxaiSU/57tnKbDZKkufsnzezHiIQK4NJlMoWYZwLf0uZ4JUM7xthlCcqFaUiyBO0KU5k4RP3VE6ayqFLU9vYjS03vOeSHeJYwhayRbiOy1KYsReWXkaAtyhK089tivr+ZQjzJbLZ5wGwCK6lvZdGY/f31M5TW2q4nS8tED54zri4iS01kCcgVpr2DgrolsrRXcC8As4PNQ2aTHMwPNg6ZTVP206ktWYKVMLUpS1G7yXOmioUF6gtTU1mCasJUJktL2pCmMlmC/oRpTZbu6mUIg6FukrT42uXA5TnXvrCtMS6RDE2MMllaMmRpCokuwfakScJU1F47z2ZMwlS1TsjJ37WEKeT75OiwVJZgQsIUL9HLEiZbPqeWhWkWT7Yz68b7f7IkYxZ/brLuZZnwoUiYgEzxKRKm5R6owQrTiXnheUQhY6zC4d2LUllasuyzC2GCTWkKiS5BsTSFCBO0L03bEibof0meGAaTk6GF5aSR9v4OJB0iU5GmIQkTtCdNIfIQ9VddmkKEKWo77Nm29Wya3nPoMoG0NIVm4VkXoGp1QoQpKr+Iy7coTIAH/qawkLd8KMIEuW00FibIlCYrEJ+mwgSb0jRLfG6qSlNTYcqtG99LnpAMIcLUNqHSVEWYonabR5mGKE1DizLBrkuTBf/+3FUmJ0N55ElSGknTOmOXptAoE2xHnKYoTVH75c829NlE7eU/H0lTJE0hwnRcPrBcmDTNN89bSnMQ30fR57xEaEqvw2p/U8akfu2co4w2rEQ06kpTMlteWn6SYyqSpqy6daUpmVY8LU17lIhPTWlKikOWNO0V3AtEwgT50nQwP4jbLo4yQX6GueU4Q6JMs4P5xsG0WVT5DXN0uKgsTaFRJhhHpClUmqC5OEmadhvJUEVCpQkkTklCpWnJEOVpSOJURQyguTxV/V+jqvI0RHGqcs9Z91tlQ2pSnKqc97CSoGp1QqUpKl9BnGbz7MNqU/jBfCO1eDaB4hQiTVBfnJLPq6I4hUoTbIqTpZcwJp5FOsV4FXGaFdVNpeZOysYs9blJ3k/6LKakOO2lphob8pPYZ5EWp3R68irilE4zviGBicx8tcUpISRNxWm536ltcaoy0WsqTqHSdNxfhjyFStNx/wHytC1xWpOmT+aXGxJuVnlOsWtIhjqkijiB5CnJ2OWpijiB5KmKPFURp6jt4mfbxrNper9VM/ks5anqQXmRCA1kOUQVcYISeVp9JgrlqSziVEWc8soUiJOlM+kViBNkyFNKOJLy1JY4RddX7fYtTrAuQHupbF5JedqWOEG2PC3FKWo/Y4JeQZyyxrg+nnBx4sRsLYNeEQcV91Qd3n1YSZygvjzlRZ2qyFPb4gTtn9Ekto9kaEBUlSeQQC2pKk8wLIGqKk/QrUBJnora2748Re0kls/tiDz5bLZxTlMu25ang8QzritPJfKzkYa8TXnKOK9pKU8b4gTB8rQxJlbylBantboZh8EuhSMtTtBO1CktTrCSp6wDcdfqpu6lbXlKilPUfj15KltSuBrP+OVpF6JOYphIhkZOHYECSRTUEygYjkTVESjoRqLqhtjrSlTdzZ4hElVVnlZtZz/XOs+mbYGqc4aEHS22EkXy2X7umU+bZaP7CBKoeGlfmUB5clKc+72x/pnIFKiD1DPO+myXyVFVeYI1gcoSlWQbaXmChHRUlSc4Fqi0PMFKgqrK03HdDHmC+HDYnGWevlhsiNOqXtRnUeSpqjyt1c24l6QkpOUpGlMyAcJm20mBSstT1H5qop7aQ5QlUGWStxrPqq1SgYpTlYcIVFV5iqj+O2txz1FleYJNgaoqT1D9DKf+sdq/93aFad/9hKkrUSCRkkS1xxgkKjQKVeeXSZsCFbW3/lyaSGPbh/AVUUWIluUh/+Dc9bKr+yiVqMTeqCKJ2ppAlchNUJkGApUlT1AsUBBJVJFAZckTFAtUdP301gUqS56gWKAgkigJVA6Jc55CBaqo32y2J1CwLlF1BEr0i2RIVKaJSMF0ZaquRMEwRGqqEtUk5WiZSDX537gskZJElZeHliUqlVwiT6I8PTHO/L7Y/DxsSFRaoKC6ROXIxnGZvAQbi2JZCZKoOgIFpRLVtkBB/n0A7O0XZKwskag6AnVcN+delqKQJVDRmJaJETavNRUo2JSoMtFbkj4kty2JqiNQ8xPFe7nyaCJRYhjo3RNbRzJVnSYiBf3KVF2JWtKmTDXJmLPLItXWc2l0vzXr+d4s88DcwjoVpChZPqRO5xIFGSJVU6JgXaR6lKgi8SiSKAByDpcFsMOCdgsmykUSVVa3iUTlXutQouoIFGxHokKiUNFYcn5PDDQKNShM5wxJhsToaCpTMD2hGnNUqolMDUWkoLpMSaQqtFOzXtciVVeiovLNRCpMoqBUpOpKFKwkKe/6skxRqvdFftRnWb9OJAqoLVFQIkPz/HaHJFGwmcp8vW5BvQKJisZ0mCtRsBKpLImK2o9FKucspTqRqLRAReMol6iov/zndBCYxEIMF8mQmCQSqnAUlWqHbUalmv4vX5FMDUWkovYWcTvDF6kqYlS1fLBIZZwXVV+ksj8HWxOpgGhUXYmCnDOhknQQjSqSqKK6szNOZB4+G10rvpdCkSp4PsUSlR+JgnaiUaUSBf0s5zvR7Gea6AfJkBA1kVCFIZlqzq5EpZpmLOoiKiWRGqlIlUWbeopGQYlIFUkUJ9ZSnG+0O5ZoVMmhzn1Eo5pKFKyLVKhEjQGn+e+YsSMZEqJHtH+qHMlUc7YpU1OKSjW61739SudlLVkmqAiVqSYiVVZHIpVBiUgVyQc0EKmay/r2zlg/ZDe03piiUW1IFATsi8qRKDF8JvXOOVZpYtX3XgkhypBMlTNVmZriEr9tiVTUXvPMfdvO2jfKPVJDy9bX4bI+aJhkIu9azVTnsBvRqL4lavhY4/+4GzvTvvsSmk6i0kiuxNCQTJUz1uQTEqkq/XSTcGJXJKoOdTP29Z6tb0ISVZZgosl5UWM5K6qrc6KKJEoMD71bW0RyJXYNHd5bzFgP6B3KmVLbOk9KElXWxnYlapQpzwMkqpODdxsculvnvKguD9zdZYESw0bv2ohpS676nniJaVJHpKYgUDAtiRrKobzbOkcqZJ9QHYnKEqiorebPoup9Ju+xqkTZ0WJj31LbVBOuWbE8LYklKk+eICVQuZ/7VZlMeYJ1gcr63KalIr0nqOx6WiAS958pLIn6aYFaW76XIR8eL33LFKj4/rMEarkML2s8yz1QWQJ1vHwvQ6COM9kVSGBaoJJL9/IEaui4VdtCsouM850TrTLWZUBielQVqKnI05Kq38tD+P6tKlBdyBNUk4Y64rTqJ3yiXyXBQhWByhOnVVvNnkWTe6wiT8n9T1UEyhanOxeuUmbzQnGChDwVvl+xhBVkoTuWp7zPbVIospIplF1PykNKHDdkJVU/KU8b+54S4uGp/UJr8pS697Q8JfcvJceTThyRlKeNPU8JeUomjkiLU2lKdjFIJEOiEWOcfInpUEWepiZOEP79O6Tv21B56kqaIFwWmkhT1E/YhL1qVrpQcSqTpqitZs+iyT2GilM6aUSICCUjR6HiFElW4JgWCzwjy95muUMIeL886C2dF0sTROJU9Lmd72cLUej12WxDmJYci0pG/aU0ZcpGgTRF7cYPp0Ca0vITIk2ZSSJiacrLtDclzOxpwKuAGfAad78sdf0E8CvAVwF3AN/h7h+Kr70YuBhYAD/o7lfHr98XeA3wGKKs4P/U3d/ZdKy9ylAXD0oMG2XzE0MlRJymKExQ/n07xO/VMmnqUpaWlIlCU1la9VM8Wa+Twjtqt/gZhsjSqq1mz6LJPZZJU1aGvarCFFJnXbBKxhRP+tsUJo4O8bz9PMu2Dg+hTDKbzhzLhKkAa1CX/f1MWYraneee8WTzWab42Hw/Ny153h6nodLGuYlJzGwGvBr4JuBm4FozO+XuNySKXQzc6e5fbGYXAT8JfIeZPRq4CPgy4GzgbWb2SHdfEDnD77v7M8zsALh3G+PtTYY6fFBiRyiagA1x8iV2n7xfGFOVpCVj/F7Nk6VtSNKSPEFoS5JW/eRP0uuKUtRu9jOsIkmrtpo9iyb3mCdLZWnI8+Qnbz9SlfJ5spS1fylPmDaW4eUJU+L9ypOltYhSniyFnuNUVCbgHKeiuoWZ8wArSPxAzfTjme3VFbbd4QnAje5+E4CZXQlcCCTn+BcCL4///Ubg583M4tevdPe7gQ+a2Y3AE8zsBuAbgOcCuPs9wD1tDLZUhszs0SlBwcye5O7XNOy79QcFNA6ViXGQNfka6qRL7D5pSZq6HCVJf68O/fs0LUnblKMlaTFoW47W+1qfHDaRo1Wbm1OLOoIUtdX8WdS9xyxJCjmnqcrBtVXLZ0lSXoKHtCTl7lFKv18Z71VakjKX26Wf15aTOxTVLUzswKYkrUWQ0pKUuPe8/UlFB+9OhHOAjya+vhl4Yl4Zdz80s08DD4hff1eq7jnAXcAngF82s68A3g38K3f/300HuxdQ5g1m9kKLuJeZ/T/Av2/aMdkP6py8Mu5+CCQfVFldMTGObHb8R4g+Wdi89WUHu8LYvkcXe/PjP31xtDc7/tN9X/uNDr7Nb3fe6ODbVTvNn0WTe/S9WeUMeT7br5SwYVk+tI7PZkF7lXw2P/5TyN68dNmdz+fHf/Lbma3+5DHfL44klV2fzfIjSQV1bTY7/pN5fX8/N4rEfJ4bRbL5rHIUqW8cW5s/hf4BzjKz6xJ/Lul4qHPgK4FfcPfHA/8beFFbDZfxRKLlaX8CnAn8OvB1bXS+DeI35xKAs88+u+fRiG0w9P95FruPIkP5jPH7s4/oUJouo0Pr/XSzvKduZCi7rebPosl9hkSHNuoEpvKuXz5sTGUZ7I4JfL9KEzKEPKuyJWVl14vuvaRuUfa3vP1FUbsFKdSzEivsJre7+/k5124BHpb4+qHxa1llbjazOfB5RPkB8ureDNzs7n8av/5GtihDp4lCU/cCzgA+6O5HLfTdxYPawN1PAicBHvvYx3oL4xYDY4yTK7E7SHzyGeP35hDEByQ/621JfjbLD1R+oFyAupSfkvqSnyyMRfspBK4FzjOzRxDNzy8Cnp0qcwp4DtEWl2cA73B3N7NTwG+Y2c8R5QU4D/gf7r4ws4+a2Ze4+/uBC1jfWlObkLu/Fvgd4KuBs4D/bGbf7u7/pGHfrT+ohuMRA2eMEyuxO0h68hnj96akp612JT1d1gmVnqhse+LTivTApKI+SpqwIt4D9HzgaqKM0Ze7+/VmdilwnbufAl4L/Gq87/+TRB5AXO4NRKJzCHx/IkHaDwC/HmeSuwn43jbGGyJDF7v7dfG/bwUuNLPvbtpxhw9KjJQxTqjE7iDZyWes35tDEJ5tyU7Ul4SnDAlPoi0JT3a9msIz/ghRu7j7VcBVqddemvj3Z4HMwIq7vwJ4Rcbr7wHylubVplSGEiKUfO1X2+i8iwclhsVYJ1Fid5Dk5DPW788hSA6MP6oTtT0c0dm25ICWsxUSEumQ6Iz+gFUHFowr6UPbKN2RCGKskyaxm0hw8hnr9+rUBCfqS5GcMhTJSbQ1hkhOSf0iwYHxSE7RfRwV3YMYJJKhCTHWSZLYbSQ2xYz1+1Zy02a705YbUASnFAlOUL22BefonmH8nBPNkAyNgLFOhsT0kNgUM9bvZYlN221PW24UuSmhqdhAP8vTYBRyUxS5KZKboyJZGrUUGUcecuzo7iIZ6oixTnqEAElNGWP9/pbUtN22pKbLOn1JDQxIbBpEbGA39t3UXZJWV2xK6+7w/qGpIhmKGevkRog8JDTFjPV7fihCA5Ka7LYkNdnltQytSf1dj9ZE9bYfsWkiNot7tDdoV5iUDBk+2gmQmCYSmmLG/P08FKnZptBE/WlfTQhDlBpFapDULOtNSGqODo8Krx/ePYyf5XVRNrmJyZAQ20YyU46EpjkSmrz2xhelgeEkC4jKSmqykNRMU2qKxrcaxzB+L4hwJENC5CCRCUdC0xwJTV570xCaqnU6ERoYVqKAkDIDzIIGuy81pXVLpKHoXppKDZSLTYjURGMp/6wf3j3e338AjrFQAgUhdg+JTHUkNM3ZFaGJ2tayM1CUZgxSA90kCoDdkBqoH61pIjUwvmhNqNiEypQYB5IhMUgkM/WQ0LTDrkjNrkVpQFKT2Z6kJm57OMvPQEvQkgxVakL7XbU7nN9Toj0kQ6ITJDP1GbPQwHSlZixRmqg9SU1++f6Wn8GA9tSAlqAt6ylas8ZQxaZqtKaO2CzuKV+iNzocFq4ECkJkIqGpz9iFBqYrNVF/4xCbtp7LLu6picoPPFoDEpsBiU1UVxGbzTZ2M2JTV2wOPzuc342iHSRDO46EphmSmvbZlWhN1L7EBkYsNjC8iE1ImREuRYuujyNqM9TEAVH745SbrqM2TSI2bcjN4vQORowmhGRoREhsmiGxaR9FbIram85StDp1FLVJMEK5KRKbsrqSm2Xb28mKpqhNxb4nJjaOsTjSMjnRE5Kb+uyC2IDkRnJTjcnJDShyk3V9R5alFckNdLMsTftt6ve53u54IjddyM3h3+3GHERESIZaRoJTn10QHMnNtOQmamf7y9JgxIIzxOhNSJmBCs6YlqaBBKd4HP0JjqI30xachVvfQ+gVyVAgkpzq7ILcgARHglMdRXAK2lQEJ257+xEcGNYSNSUWSPanCM6YBef03+7GfGeqTF6GJDnVkeS0z7YFJ+pTklOFSUZxQJKTdX1gkqPsacm2d19yph7F2WYER5LTDWZ2f+D1wLnAh4BnuvudGeV+H/ga4I/d/VsTrz8Z+BngAHg3cLG7H5rZk4DfAT4YF/1td7+0bDyTkyHJTz6SnG5QJKeovf4lBxTJKWxTyQYSbSvZgJINLPsadyRHkrMb8502cKyPc4ZeBLzd3S8zsxfFX78wo9xPA/cG/vnyBTPbA64ALnD3D5jZpcBzgNfGRf4oKU4hTE6GpopEp30UzSlrT6JTXl6is4ZEZ1VPorOGRKdCPxMWHUnOaLgQeFL87yuAa8iQIXd/exztSfIA4B53/0D89VuBF7OSocpIhnaEXZCdIYkOKKJT3ua0sqvVqTcK2dHStUEtXVMCgrw22pGdoaSPluhUZ+iis7hr2OMbGA9y91vjf/818KAKdW8H5mZ2vrtfBzwDeFji+tea2Z8DHwN+xN2vL2tQMjQSJDvtI9kpak9RnbA6/WVbA8nOqu3dkJ3SvTY7KjuK6iT6kewMll2VHffa2eTOMrPrEl+fdPeTyy/M7G3AgzPqvWS9f3cz89BO4/IXAa80sxPAW4Dlm/M/gYe7+9+Z2bcAbwLOK2tTMjQgJDztskuyE7Uv4VmrN7BlbFH5EaeX1jK2DXZlGVvfshO1MWzhGVNSAslON+yq7HTI7e5+ft5Fd39K3jUz+7iZPcTdbzWzhwC3VenY3d8JfH3c1lOBR8av/02izFVm9p/M7Cx3v72oPcnQlpHwtIv27ZS1J+EpLy/hWUPCs6qnVNPHaClbOIruDBcJz2A4RZT04LL479+pUtnMHujut8WRoRcCr4hffzDw8Th69ARgD7ijrD3JUAdIeNpnl6I8Ep5UPe3fSbSlJW1jWdIGw9u/o0QFivBsAwnPrmEcHu1tu9PLgDeY2cXAh4FnApjZ+cD3ufvz4q//CPhS4D5mdjNRCu2rgReY2bcSyc4vuPs74nafAfwLMzsE7gIucvfSJXi9yFBIfnEzexzwC8DnEq0FfIW7vz6+9jrgG4FPx8Wf6+7v6X7k60h62kfSU9SepCesvKTnGEnPqt4O7eOR9CjKsw2GLD0SnnHj7ncAF2S8fh3wvMTXX59T/wXACzJe/3ng56uOp6/IUEh+8c8A3+Puf2lmZwPvNrOr3f1T8fUXuPsbtzXgsYuPpEf7eaqiQ0ZL2tTytkTbWt5WhJa3Ve9v1aYiPV0j6Zk2Diy2HxkaFH3JUGl+8UT+cNz9Y2Z2G/D5wKe6HNjYpQckPhKf6kh8StqU+CTabl98iuqBxGfV9m5nbduW+Awt2qPDRiMkPqIv+pKhSvnF401QB8BfJV5+hZm9FHg78CJ3v7vqICQ+7SPxKWuvf/EBJTQobG+b4hNSZoTiE10fx1K3XRWfqI3i90jiE9ivIj6tI/ERQ6IzGWorv3iccu9Xgee4+/In0ouJJOoAOEkUVbo0p/4lwCUA55z9kNELkORnevLTl/jA8ORn0Ht8QFGfivVA8rNqW1GfJFrqVg2Jj6iLOyyOap0ztDN0JkNt5Bc3s88Ffhd4ibu/K9H2Mqp0t5n9MvAjBeM4SSRMfMVjviz4UKchMDTxAclPeXuSn/LyI5Af0JI37fWR/NToc9Wm5KdLJD9CtEdfy+RK84ub2QHwX4FfSSdKSIiUAd8GvK/zEW+JoQmQ5KesPS17Ky+vZW9rKMPbqp4yvB2jRAeB/Qxs2ZvkR/Ijxk9fMhSSX/yZwDcADzCz58b1lim0f93MPh8w4D3A92119C0ydfmJ+hxPeuuozf4FSNGfkjYV/Um0Pe19P6V1Ff2p3OeqTUV/ukQCJLbFoZbJbZ+Q/OLu/mvAr+XUf3KnA+wYCZAiQHVRBKigPUWAEm0rAqQIkASoTSRAEiCxu/QVGZocEiAJUF10yGlJm2M65DSgDe0B0h6g/DEoClTarySoVSRAYgpIhjpGEiQJqouiQAXtKQqUan+7WeDKxGFIEtQkCgTFElQmQLA9CQoVoNA+V+1OT4KmLkAgCZoS7qZscn0PYFeRBEmC6iIJKmlzTJGgHZMgUCRo1bYiQUl2QYJAIiQJElNEMtQykiBJUF2UFKGkTUWDEm3vxp4gGF40SHuClBWuS4YqQSARmiqOEihIhlpEIiQRqotEqKTNCR2MCvVFaFeyw4FEqAyJkESoTSRCYsrs9T2AXUEiJBGqi0SopM3QiFAIIaJTxkBFqIxti1AT+tofVFg3YH9QeRvb3x/UJXWXxjXut+WlcVNHIiSmjiJDQoyUutnidpJtLY3rmNI9QkV1K0QAtkFXZwZ1RVlUqIw6UZWu6ToqVIc2okJCiHY5mvj/LygyJMSEkECJqdIkKiSEEGJ3kQwJMSF8tt/3EPpjPuF7HxF7s1k37e5PbyHE3jz8Wc5PbOf5zM+Y3vswdGb36uZ7ToixIBkSk+Vor51fAEd7zSbZXnMcQxQbn/U00WnpvexbmGy/pP95/vO1ChPfKnWLJMIKxGWv4F72Dup/TorqVpn8p5kdFD/7vXnxr8sQmQgZ3yzg2cxPDGPyOjuoN4VoKkSz/XanLvP7bOd57p85jPctCwnRdHGHw4VV/rNLSIZaYrE3rP/tamuiX63PbieSRx0846EIUV3qCFHVOl7xf+qDhSjw/fQCAVhvL2CcIbJTVqbseZTULxII6E6IrGxcAxKisuhQXSEqiw7tohBVjQ5VjRBJiKohIRJieEiGWmSxNx+UFB3tzbYuRUd7+52KwdHevHUpGoIQ+d5sqxEin+1XquezWSUpqiREAe+nz+dhUhQqRGXCEyJERc+jpA+bzQolwvb3i6WoRIjyxMbm+4VS1ESI8u5nb38/V4r2Dua5YrM3mxVKUZkQ5UnA3v688F5mB/uFUrQ33yuUohChaFOIQqSo6Hlkt1tdiOpI0fyMeSMpmu3vtSpF8/vMtiJF+2fOBitFs3vNJEWic8zs/mb2VjP7y/jv+2WUebiZ/U8ze4+ZXW9m35e49h1m9hfx6z+ZeP2Vcfn3mNkHzOxTIeMZzsx9h1gK0VDSbS8n+9tMt70Ug67SbS+FqK102209o6b3vRSiqum2k2JTJUnCsl5onaUQhaTbXgpRULrtpRCVvJ9LISpMt50UoqLnuJSCvAxySWnIK7OcrOc9j5I+lgKRl6J6KUSZWeaSQpTxPJZik5VlbilEWem2k0KUrpuUiKyEBEX3sxSirCxzS7HJyjK3FKKsLHNJIcqsG99LVla1sntZClFelrmlEOWl3F4KRV6WtqSc5GV9SwpRUcrtpBAVpd0O6XPV5qrv0ExzSyGqmnJ7KUR1M80lhaiNtNtJIeryDKKkEA3tDKKkECn19m6zXCa3ZV4EvN3dLzOzF8VfvzBV5lbga939bjO7D/A+MzsF3A38NPBV7v4JM7vCzC5w97e7+w8tK5vZDwCPDxmMZKhDhipFsD0xSkZLuhCjZJSoDTFq6xk1ve9klKiuGNWRotB6yShRmRglo0SlYpSMEhW8n8koUWMxCpGesjLJCEbW8yipn4yqZIlEMkpUKEYFUgSbcpOMErUpRkX3k4wSpcWoSG6SUaKqYlQmAUX3kowSZYlRMkqUJUbpKEuWWOyaGKWjRKFylI4S1ZGjXRAjGJYcpSNFkiPRAhcCT4r/fQVwDSkZcvd7El+eYLWa7QuBv3T3T8Rfvw34duDtqT6eBbwsZDCSoS2QXjo3BDmSGIW0N24xSi+DC4/+bEeMovJFIjMBMcpoI73cLC0ThWKUXj6Xeh6hYhRdT42rYzGK6q76TC+DSwpOevlcWo5CxQg2RSBUjGBTjtLL58rkqEyMssYXjWP92eTJUXoJXZ4chfS5arNc7tL0JUfpJXRN5ShrCV1XgiQ5EtvCgUW9b42zzOy6xNcn3f1kYN0Hufut8b//GnhQViEzexjwu8AXAy9w94+Z2V3Al5jZucDNwLcBB6l6DwceAbwjZDCSoR4Ymhyl98xsQ47S+2valqP0vqKmcpS1r6jOc8raV1Tl3rP2FYUKUh05qlona19RkSAFy1HWvqKM9zRrX1GmIKWfY9YzzNpbk5afsjJZe17Sz6OBHGXtK1oTpKy9RfHzyNoflJScIjkqqpu1H2cpFVn7ipL3U0WOYCU6WXuLloJUVA+y9+8cBdwLZCdcSApS1t6ipCBl7c1Jy0XR+Fbj2GwnS5Cy9hdlCVJIn6s2s6cRRZKUtb8oRJCy9hdVEaS8/UVNJGlbgpS3x2gIklS0x0iitNPc7u7n5100s7cBD8649JLkF+7uZuZZbbj7R4EvN7OzgTeZ2Rvd/eNm9i+A1wNHwJ8AX5SqehHwRncP+gBKhgZAVtKFPgWprYl/tT6bSUJ5+5vPeOqClJVAoVx2sjeWF9WrIkhZiRe2Ikh5iRfSz7ErQYKVJOUlOIjbyEtUsJSKvMQLx5JUUZAgEp28xAtLSaoqSBCJRdH95CVeWEpSVUGCSJLyki8c1815DkeHi8J7gfyMdEtJyku+sJSkELkoGt+SvAQMaUnKS8CQlqSiBAxZolRVkooSMBSJUlEChlBRKkrCUEeUipIwtC1KRYkYhi5KIFnaZdz9KXnXzOzjZvYQd7/VzB4C3FbS1sfM7H3A1xNJzpuBN8dtXQKkP0gXAd8fOlbJ0EDJy0rXlyTlZVzrUpLysrO1JUl5WemaSFJbz6npvedlpiuTpKIMc8XCU02S8jLTZUlSUWa6DVHKy0yXek+LMtOtiVKIJBVlnltKUIngAP1KUlGmvsPDWpJUhpeIRWHK7lo9RrJTmLb7IP/S0T2Htc8xOjp9WJihbnHP6cIMdUeHR6UZ3g7vLh7fUljKstQtZaksS11SlqqIUsh9pOlClCBMlsqy1VWVpZBsdW0JU0jGur6FqUrmOolTRziUbBvsglPAc4DL4r9/J13AzB4K3OHud8XZ5v4e8Mr42gPd/bb49X8JPDNR70uB+wHvDB3MpGTIzTiyjP/ND4uiDYKxSBJ0J0pFKazbEKWi1N11Ramt59T03ovSd3chSlXrlKXvTstSsCiVpe9OvK9BolSWwvuoRGAgkpgykTg8XX6uUQlNcwRlrl1ooW2b72cmbQCYzWeZWfCWFE0/Z7NZbna+vf39zGx2x9yTf2nvXrPMxA0h7M1npUkKiin/3p6X/DoP+cl1dLhoXZZCBDL5bELSeieFKTSld5Y0haT1LhOm0NTeVaQpNL13G9JUNcV3n/JUJ+W3BGqwXAa8wcwuBj5MLDNmdj7wfe7+POBRwM/GS+gM+Bl3f29c/1Vm9hXxvy919w8k2r4IuNLdi359rTEpGcojS5CSjEGWQs432rYwhZzf07YwhZz100SYQs44qipMbT2npvcecs5RnjCFnFmUlp96dQLGGE9YQ846OhamkLOrjg6Dzjqyw8PA847KizDfz0/kEMpslp/6m3hvUEEfViAXFKX+Bqwgy110vV7671lBModoXHGq7qyU2TUz3QHsUZACPDFRK8p2V5QCHOqlAQeYxVGtvFTgB/ODuP2CSXlJOvDkWMvkbilVRZnvVv3OCjPfpak6cTm8+7DyOUhLeapzDlKWQNU5D6lMoOqeidREopqej7RtmWrzzCSJVXu4+x3ABRmvXwc8L/73W4Evz6n/rIK2X151PJKhAMpkacnQpSn0QNhtSlPogadtSlPo4ah1panKobCh4tTWc6pyMGzW/Vc5GDYtTlUOeV1KUL067f3yW2s/sJwfzEvPS4qYF2e/W3IwCzsvCTrLgLexFK5iBjxSS/TS8mQFWfDSS/SqZMGbldQltUxvLTlCwT1l7WVaS/aQ8av1eD9SxuQsKU9NEj5EYytL+rBxeUOgluK03kdqYh6YVS40U11o6vCo77D04UsOAgUuyfzEsv06vw+bT60OP3vY2oGyaalq+2DZKnLV1WGz25CsymJ1VzfjaBun8P/LJoFkqEVCpWnJUOUpVJqWbEOeQmVgSRvyVEUcVv1WE6gq4hS1X/ysqz6nqM3sZ1X1/tP3XkWcliwFqooEQSRCVetUpcqBswQeOOvJiW/he5vKupcnUQcV04dD9QQQUJolL3MfUTIbXUlWubQ8wUqgNsTpuP36SSCi66c35CldP4+j04cb8rRWtyQZRJY8HV+/5zBToI6vFySEOK5fsqcnb+9WNL5lYojcIizuOZ0pUKs+EpPxgmVwS/GosgcpNFFE1HdYsogkBxUy6y1ZitR6HxXTgh+snmfVQ2w3xnNGPIaah9oWsTh91Lpc5VEkXV1JVgh977sSzZEM9UhVeVoyNImqKk9JuhKpOlKwpK0zhar3Wy5SVeVpvf3sZ93Ws2py71Fbp2sJFETiVfVwWuj+gNp0lKpQpCpk0vOsCeDG+5v9WdkQqYOcZ95WkohlmYr7wTauB0T8cpfzEUX28pbzRddP5C7nO24/ZxK8d8byesnnIevMoDNWM+fMZX3LtkueT+5eqHtF7Wctz1urn9t+ef35so8SSchb4rdk/94ncpf5rbVTtNRvyeecCBaQ2UH4z47FPYe5UpXFUrSypCqPzaQToX2V7G86KDDamKritRStPNoUsNn92k+N3imf7HsAIhTJ0AipK1FphiBVTUQqSZtS1UQO0rSVHKFan9mTiSYitdnHYdxmf/8bt0GDw23bTE8O9RJKZNWrlFAicI9UpkhlEfo9dXCifLnfQTxjCv1+yJKKE2eUltlYypg+sDbdRl5fKY4z8uVdX0atKJi1BojWXsHEso5opSmTkdrClSxTW7rC24CwJW/7Jfe7JETAVv2GTbyXYrJ/79B2q/8+Tke/Dj6nXHagZGnh55TXrzLWE2fmj6neEsRymkbSqnLizBzp+/BWh1EbdzhcBOca2EkmJ0MLC0g04P0egrot2pKqNH1IVltSlUdd2epSFtpa3jYU2jwot5UU5yXPsWkyCmi+r6rO0sDwKNhqYl8WtfHUMMqWB26Qfq8P8qXiWLwOSv5Luol4pfssKXcsSaEL7ysIWGGZADlJSljepzJEpMpkLLSdMiGDsHsPETMIFKsKGyZC2oPqchPyXJJUEbjjPgJFLk1TaWmWSXFFUDKOGlRJ3lGJ93TTrGifXmTIzO5PdHLsucCHgGe6+50Z5RbAMo3eR9z96fHrjwCuBB4AvBv4bncvSIpajRBhaotdFK+uJCuErkSsa9nKo0jC+ozKHO3NejmId8kQklvUff5rz62JuM7PqPcc9tclos7ywrX6FZYY5tcLXAdE4J6tjToN5ayo7ZAkGGtth43fQiUNwjMOVnl2gW2GiAusxK30uybweYaI16pshWWwFdqtIjChz2nVdsX9pzVFoW66+Lr9rbXRkiRVFclQ6gjnGHEP/rbbWfqKDL0IeLu7X2ZmL4q/fmFGubvc/XEZr/8k8Ep3v9LM/jNwMfALnY22Q7YpXnUYm6z1KWJVCRG3viQshD7PvNrGnrCuImxtHRockS8RTSJrZaw9w7JNA0HttfNMmood1Je7NurXEb1V3Rrvd83PSFIAQ7Ms1n5v6qSWr1On7rOvmfq+qhyt1a0oSmu0MOutIozF7bQvG22NrYiu5Ev0R18zrQuBJ8X/vgK4hmwZ2sDMDHgy8OxE/ZczUhkaOkOXtb5oQxLHJG5VOOogtXWbEb/+BbM4CtLXAcp16TpCWIV2RbNq39t/37b57Lf1bNsQ2tI+GgrvEPtqItKV+9roe0A/s0b281MMg75mBQ9y91vjf/818KCccmeY2XVEh2df5u5vIloa9yn349nozcA5IZ061vsEdAhJC0RzJInbZUrP+/Re+JIxIYQQoimLgSbk2xadzTDM7G3AgzMuvST5hbu7meWlsXi4u99iZl8IvMPM3gt8uuI4LgEuATj77LOrVO2EvmVMiDZZTC8HS+csyndVjIYjb+fQyDbp6/kutvQsFt7t/S2Ouml/4aEL7uq0Pb4xHx51/3lZbKGPzT67e2ZVORzQWES/dDaTcfen5F0zs4+b2UPc/VYzewhwW04bt8R/32Rm1wCPB/4LcF8zm8fRoYcCtxSM4yRwEuCxj33stHMHtowmwsNjlybSaTSxjvvcwnPoYvLY5iS6jUlok3ts0n/dSW7diWudyWfVSeI2+gA4qvG/14eLGmOrUafu/6w32eLSdGVcG+mU29x431V04vBwe1O/xcRTVI+Vvmazp4DnAJfFf/9OuoCZ3Q/4jLvfbWZnAV8H/FQcSfoD4BlEGeUy6zdBk/zxsMuT/yVDlIAkEoIKbbYkBGOUgToSUEcAqkzMq0zIu2o3dIIfOkEPLRc68awyWQ/OLB44YQydaFeZRIdNjFdlqkxuq06660ycD2umx25at41JfpP+s1h0ZE+HQz3EtSOibHLTlri+Zv2XAW8ws4uJjqV6JoCZnQ98n7s/D3gU8ItmdgTsEe0ZuiGu/0LgSjP7ceDPgNeGdWsSnRRTkAmQUBT2LbFooY16Y6nbd9di0bdQhLbZpkiElAmZe4XIQ4g0lAlDvigkJvIh4w2YBIVMhNtqJ2or8GDTwHLVhCZ8Ilx1Ml5nkn14un7456iBLDTpN0kXwrLYUja3tp6BGD69mIG73wFckPH6dcDz4n//CfDYnPo3AU/ocoxdMBXxAMlHYd8j3jswFAHZxahG26LQdpsh4rEt6WhDODZlY/3rsqhE6RhL5KBsgt6GXIRM7MvKhIlQqJQESk6gNFSZrFYVg6oT4bqT/iYT+/aEpf1J/2ILIrHYQhrtELYlZ6I7JhcmkZAMC0lJzTYHtP9i18Ski6hIHxGRMunYhpRUF5LU9Q6FpKmMNBWRbUlIyCQ9RD5CJ96h0tG1bNSZoDaRizaEok2B6FoU+hSALuRtyjja6zQpGRrKWy1JKelbkhK1NTJJgeqi0lX0JBrL9kVlW9GTMUtKE8noU1DakJOyCf2QpaSKjFSdKNeVkCaT4jbEo23h2IZgDEEkFk0OjR0oh/coOjRmJiVDVZCwBPQ/0r0mIGkZirS0veRLkZXEtREKS5eyMhRRCZGUvgWljpzUnWQ3kZI2ZaQrEelDPsYgG5KHAeGuBAp9D2C7WK+SI3lp0O5A9qpEbUhe2mpzSPIy5GhLV8vBuhKXpkvAiqWne2npQ1i6lJU6E/K+JaULOdmmmAxRSCQgK44GECETw2FiMlSdKQhM1M9uLxmL2tDelrbabUtixr5kbIjRlyaiMeTISxtRl74EZtflZaziMjRhmaKsSEqmiZndH3g9cC7wIeCZ7n5nRrkF8N74y4+4+9Pj158M/AxwALwbuNjdD83s84BfA76AyHF+xt1/uWw8k5IhZ7tyM2aRAUVjhhKNicYyzv0vXS8l6ysaI5FJ1B1QJGZsErNLAjMleZmCtEhSpoN7LwkUXgS83d0vM7MXxV+/MKPcXe7+uOQLZrYHXAFc4O4fMLNLic4cfS3w/cAN7v4Pzezzgfeb2a+7+z1Fg5mUDNVBS8vitkYoNGOMzAxNZkLKdBmZGdvSsiHKzFgiMn0vJ9uWyAxJYqYiMLssL5IWMVIuBJ4U//sK4BqyZSiLBwD3uPsH4q/fCryYSIYcONPMDLgP8Emg9AfApGTIsU7lZgpSowjNOKWmqdBEbRTUH+BSs6HtlekzOjNWoZHMlLTV8URYItMdkhgxcR7k7rfG//5r4EE55c4ws+uIhOYyd38TcDswN7Pz4/NJnwE8LC7/88Ap4GPAmcB3uHvpL6ZJyVAoU5CaqA1FatpqU5Ga+PqIlp11lbms770zkprAehORmr6FRjIjxLBxL/+9lcNZsagsOenuJ5dfmNnbgAdn1HvJev/uZpb3S/Xh7n6LmX0h8A4ze6+7/5WZXQS80sxOAG8Blt+Q3wy8B3gy8EXAW83sj9z9b4puZFoy5O2JjsRmfGIT2q6SA8TXRrQEbYxio2hN1hhqJA6Q1GyFXZQaCY0Qjbjd3c/Pu+juT8m7ZmYfN7OHuPutZvYQ4LacNm6J/77JzK4BHg/8lbu/E/j6uK2nAo+Mq3wvUQTJgRvN7IPAlwL/o+hGpiVDBUhupi03itoU1RtW1Gase2u2mSRAYtMMSc24kNQIMTpOESU9uCz++3fSBczsfsBn3P1uMzsL+Drgp+JrD3T32+LI0AuBV8TVPgJcAPyRmT0I+BLgprLBTEqGHKstPdprk1V+95eljTVyA9vfazO2yI3kRnLTSts9yo3ERgjRFHevu0yuCZcBbzCzi4EPA88EMLPzge9z9+cBjwJ+0cyOgD2iiM8Ncf0XmNm3xq//gru/I379x4DXmdl7AQNe6O63lw1mUjKURoKTVV6CA80kR4ITIikSnCkKzhiWpCly0y6SGyFEGne/gyiCk379OuB58b//BHhsTv0XAC/IeP1jwFOrjmdyMhQiIbu2RC0q356QVGlzKvtv+liiNqZsaRKc6v2t+p2G4Ch6Mw4kN0LsHj2cMzQoJiVDUWrt7S2Tm7rkaB9OUb3hRHHKro9VcoacXGDoghP1OWzJkeC0hwRHCDFlJiVDWWi5Wr32prwfpwvJaVJXkZxNJDlFfUpy8tglyZHgCCFEGJOSIfdy+VE0p7wvRXOyxrMb0Zy+M6ppudruLleT5LSDJEcI0SYNzhnaGSYlQ2CDiehob05B/YmLTlfJByQ6Rf1WKDvSaM4u7snZJckBiY4QQvTBxGRoHS1dq35dolNeL6q73aVrEp2ifocrOorm5LNLoiPJEUKI4TIpGXLyBWgKohNSRimlQ+oN60DQXdujo6VrqTYU0Rk0Eh0hxJhx9+Df4bvKtGTI211yNjTZGev5OaVj2gHZGXJCAkV16qGoTj6SHSGEEGNhUjK0RLKTU1eyI9kpKiPZqdfOjsmOREcIIcQuMTkZSovLlLKwaRmbZKewjGSnXjuSncEi2RFCiBK8fJ6y60xKhtwtV36GEt1RgoKQeuNKOa09O8n+tyc8kp1sJDtCCCHEimnJEMXSo+hOQbsDEh5FdwrKTOwQ0SEnKNCeneZIdoQQolvcvdJ/gu4ivciQmd0feD1wLvAh4JnufmeqzN8HXpl46UuBi9z9TWb2OuAbgU/H157r7u8J6XsIe3eaRHei+u3v3SmSlmhM4xcepZ/O63O4wqPoTjaSHSGEEKId+ooMvQh4u7tfZmYvir9+YbKAu/8B8Dg4lqcbgbckirzA3d9YdwBDXs4W1d+u8Oi8HS1nW/U9vugOSHiGioRHCCHEkOlLhi4EnhT/+wrgGlIylOIZwO+5+2eadOq+LjkSnub1oroSniQSnqz+JDxZSHiEEEL0iRM299ll+pKhB7n7rfG//xp4UEn5i4CfS732CjN7KfB24EXufndZp2kZWqIlbSH1xiM80fX8N2YqwhP1X7G8hKdVdkV2QMIjhBBiN+lMhszsbcCDMy69JPmFu7uZ5c6YzewhwGOBqxMvv5hIog6Ak0RRpUtz6l8CXALwgAd9Qa5k6PwdJS3IQnt40n1JeLLYFemR8AghhJgancmQuz8l75qZfdzMHuLut8ayc1tBU88E/qu7H89yElGlu83sl4EfKRjHSSJh4txHnu91pWcKaaklPAVlJiQ8UX/K0pZGwiOEEGLnUDa53pbJnQKeA1wW//07BWWfRRQJOiYhUgZ8G/C+0I4lPGXiMt19PDp0tGY7HUyuJTzNkPAIIYQQYfQlQ5cBbzCzi4EPE0V/MLPzge9z9+fFX58LPAz4f1P1f93MPh8w4D3A94V0upzm6yweRXnKGNI+HtCytjaR8AghhBD90cIRO08GfoZou8y7gYvd/dDM7gdcDnwR8Fngn7p7acCkFxly9zuACzJevw54XuLrDwHnZJR7cr1+VyK061GeJhngpiI8of1FfQ5XeKL+tKwtjaRHCCGEKMY9PClUi9Q+YsfM9ogyUV/g7h8ws0uJVpm9Fvh3wHvc/R+Z2ZcCrybDN9L0FRnqBfeVBE09ecHQDyBVtrasvhTlSSPhEUIIIUZH7SN24pVh97j7B+JrbyXaTvNa4NFEq89w9//PzM41swe5+8eLBjMpGYJ1CRqL8DRpt8+9PIry1ENRnk0kPUIIIUT7uHvdecdZZnZd4uuTcdKyEJocsXM7MDez8+MVZc8g2lID8OfAPwb+yMyeADwceCggGVoSRYbWpWJI0qO9PIryVG5nh6RHwiOEEEKMhtvd/fy8i10dsROXvwh4pZmdAN4CLH/xXga8yszeA7wX+LPEtVymJUNsCkcXwlN2XVGecpSxLdHGDgkPSHqEEEKIXafjI3beCXx93NZTgUfGr/8N8L3x6wZ8ELipbKyTkiHcM+VHUZ7w+rCbS9v6Fh6Q9AwRCY8QQoidpp9zhpoesfNAd78tjgy9EHhF/Pp9gc+4+z1ECdn+MBakQiYlQ1HGjGxJGVMCA53Ls+xfUZ7jdiU8jZD0CCGEEFuj6RE7LzCzbwX2gF9w93fErz8KuCJednc9cHHIYCYnQ3mCoihPQRnt5anejqRncEh4hBBCiP5p4YidFwAvyHj9ncRL5qowKRkCRXlyy4xsWRv0Lz0SnmEi6RFCCCHCiPbTT/v35qRkyN0V5ekxyjNG4YFufkhIeJoh4RFCCCFEG0xKhpbUjfLskvCE9hf1Odwoz5CFByQ9TZH0CCGEEKJLJiVDyz1DSlGd1aeEp3a7Ep5GSHiEEEKIfogOXZ327+GJyZAfi4b28QSUH+GyNgnPMJHwCCGEEGKITEqG8JUEKcKz7F8RnuN2JTyNkPAIIYQQI8Ob/Uf2LjApGfLUwVISnoI6Ep7W2BXZAQmPEEIIIXaLackQmwLUxnI2UJa2ym3skOzA7giPZEcIIYQQU2JSMkQqMrRkF6M7fcsOKCX1UJHwCCGEEAKWCRR2Z45Th0nJkHu++CiyU7ENRXYGiURHCCGEECKciclQsf1KdhJtSHYGiWRHCCGEEKI9JiVDecvk0kh0arYr0WmEREcIIYQQ2yQ6dmba849pyRDDFZ0h79MBiU5TJDpCCCGEEMNjUjLk8d+SnES7kpzaSHCEEEIIIcbNtGTIfU2EtFytXSQ4QgghhBAjwr23eeNQmJQMFZ2yK7nZRHIjhBBCCCF2mUnJUJVc6jojZ3hIbIQQQggh2sPdd2aeWJfpyVDDCbWEpj6SGSGEEEIIMST2+ujUzP6JmV1vZkdmdn5BuaeZ2fvN7EYze1Hi9UeY2Z/Gr7/ezA6COo7XRTb5U4XDew5b+9MnR4tFK3+EEEIIIcS06coDzOxE/PWN8fVzQ8bTiwwB7wP+MfCHeQXMbAa8GvgHwKOBZ5nZo+PLPwm80t2/GLgTuLjuQNoUlj4Fpi1hkcQIIYQQQkwErzeHbEhXHnAxcGf8+ivjcqX0IkPu/r/c/f0lxZ4A3OjuN7n7PcCVwIVmZsCTgTfG5a4Avi2w386EpUsZkbAIIYQQQohdoEMPuDD+mvj6BXH5Qoa8Z+gc4KOJr28Gngg8APiUux8mXj8nqEXXvhUhhBBCCCEGTh0POK7j7odm9um4/O1FHXUmQ2b2NuDBGZde4u6/01W/GeO4BLgk/vLuPz71De/bVt9iNJxFyTeKmCT6XIgs9LkQWehzIdJ8Sd8DCOHvPv3+q//41DecVaPqGWZ2XeLrk+5+cvnFUDwghM5kyN2f0rCJW4CHJb5+aPzaHcB9zWweW+Hy9bxxnAROApjZde6eu1FLTBN9LkQW+lyILPS5EFnocyHSpERhsLj70zpqtw8PWNa52czmwOfF5QvpK4FCCNcC58UZIw6Ai4BT7u7AHwDPiMs9BxiUYQohhBBCCCFqU8cDTsVfE19/R1y+kL5Sa/8jM7sZ+Frgd83s6vj1s83sKojW+gHPB64G/hfwBne/Pm7ihcAPm9mNRGsBX7vtexBCCCGEEEJUo0MPeC3wgPj1HwaO03EXjidAmHYGM7skuZ5RCNDnQmSjz4XIQp8LkYU+FyKNPhPjYVIyJIQQQgghhBBLhrxnSAghhBBCCCE6YydlyMyeZmbvN7MbzWxjvaCZnTCz18fX/9TMzu1hmGKLBHwmftjMbjCzvzCzt5vZw/sYp9guZZ+LRLlvNzM3M2WLmgAhnwsze2b8M+N6M/uNbY9RbJ+A3yNfYGZ/YGZ/Fv8u+ZY+xim2i5ldbma3mVnm0S0W8R/jz81fmNlXbnuMopidkyEzmwGvBv4B8GjgWWb26FSxi4E73f2LgVcCP7ndUYptEviZ+DPgfHf/cqJTi39qu6MU2ybwc4GZnQn8K+BPtztC0QchnwszOw94MfB17v5lwL/e9jjFdgn8efGjRJu8H0+U+eo/bXeUoideBxSlp/4HwHnxn0uAX9jCmEQFdk6GgCcAN7r7Te5+D3AlcGGqzIXAFfG/3whcYGa2xTGK7VL6mXD3P3D3z8Rfvosob73YbUJ+VgD8GNF/mHx2m4MTvRHyufhnwKvd/U4Ad79ty2MU2yfkc+HA58b//jzgY1scn+gJd/9D4JMFRS4EfsUj3kV0Rs5DtjM6EcIuytA5wEcTX98cv5ZZJk7d92mi1HxiNwn5TCS5GPi9TkckhkDp5yJezvAwd//dbQ5M9ErIz4tHAo80s/9uZu8ys04OLRSDIuRz8XLgu+KUwVcBP7CdoYmBU3UOIrbMvO8BCDEkzOy7gPOBb+x7LKJfzGwP+DnguT0PRQyPOdGSlycRRZH/0Mwe6+6f6nNQoneeBbzO3X/WzL4W+FUze4y7H/U9MCFEPrsYGboFeFji64fGr2WWMbM5UTj7jq2MTvRByGcCM3sK8BLg6e5+95bGJvqj7HNxJvAY4Boz+xDwNcApJVHYeUJ+XtxMdBL6aXf/IPABIjkSu0vI5+Ji4A0A7v5O4AzgrK2MTgyZoDmI6I9dlKFrgfPM7BFmdkC0ifFUqswp4Dnxv58BvMN14NIuU/qZMLPHA79IJEJa/z8NCj8X7v5pdz/L3c9193OJ9pI93d2v62e4YkuE/A55E1FUCDM7i2jZ3E1bHKPYPiGfi48AFwCY2aOIZOgTWx2lGCKngO+Js8p9DfBpd7+170GJFTu3TM7dD83s+cDVwAy43N2vN7NLgevc/RTwWqLw9Y1Em94u6m/EomsCPxM/DdwH+K04l8ZH3P3pvQ1adE7g50JMjMDPxdXAU83sBmABvMDdtbpghwn8XPwb4JfM7IeIkik8V//RuvuY2W8S/efIWfF+sZcB+wDu/p+J9o99C3Aj8Bnge/sZqcjD9H0qhBBCCCGEmCK7uExOCCGEEEIIIUqRDAkhhBBCCCEmiWRICCGEEEIIMUkkQ0IIIYQQQohJIhkSQgghhBBCTBLJkBBCiEzM7L5m9i/7HocQQgjRFZIhIYQQedwXkAwJIYTYWSRDQggh8rgM+CIze4+Z/XTfgxFCCCHaRoeuCiGEyMTMzgX+m7s/pu+xCCGEEF2gyJAQQgghhBBikkiGhBBCCCGEEJNEMiSEECKPvwXO7HsQQgghRFdIhoQQQmTi7ncA/93M3qcECkIIIXYRJVAQQgghhBBCTBJFhoQQQgghhBCTRDIkhBBCCCGEmCSSISGEEEIIIcQkkQwJIYQQQgghJolkSAghhBBCCDFJJENCCCGEEEKISSIZEkIIIYQQQkwSyZAQQgghhBBikvz/+z/waj9fLBIAAAAASUVORK5CYII=\n",
      "text/plain": [
       "<Figure size 1080x360 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "import scipy.io\n",
    "from sklearn.model_selection import train_test_split\n",
    "\n",
    "\n",
    "X, T = np.meshgrid(x, t)\n",
    "\n",
    "# # Define custom color levels\n",
    "c_levels = np.linspace(np.min(u1_new),  np.max(u1_new), 100)\n",
    "\n",
    "# Plot the contour\n",
    "plt.figure()\n",
    "plt.figure(figsize=(15, 5))\n",
    "plt.contourf(T, X, u1_new.T, levels=c_levels, cmap='coolwarm')\n",
    "plt.xlabel('t')\n",
    "plt.ylabel('x')\n",
    "plt.title('Allen-cahn-Equation')\n",
    "plt.colorbar()  # Add a colorbar for the contour levels\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "3a0d65ed",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Toy problem data\n",
    "input_size = 201  # number of columns in a dataset\n",
    "hidden_size = 32  # number of neurons\n",
    "output_size = 201\n",
    "sequence_length = 80  # number of sequences/ number of rows\n",
    "batch_size = 1\n",
    "num_epochs = 20000"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "ae65e203",
   "metadata": {},
   "outputs": [],
   "source": [
    "u1 = u1_new"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "36ea25b0",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "test data shape (201,)\n",
      "input data shape (201, 80)\n",
      "Target data shape (201, 80)\n"
     ]
    }
   ],
   "source": [
    "input_data = u1[:, 0:80]\n",
    "target_data = u1[:, 1:81]\n",
    "\n",
    "test_data = u1[:, 80] ### Change here\n",
    "#test_target = u1[:, 81:101]\n",
    "\n",
    "print(\"test data shape\", test_data.shape)\n",
    "#print(\"test target shape\", test_target.shape)\n",
    "\n",
    "print(\"input data shape\",input_data.shape)\n",
    "print(\"Target data shape\",target_data.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "ce742851",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "input tensor shape torch.Size([1, 80, 201])\n",
      "Target tensor shape torch.Size([1, 80, 201])\n"
     ]
    }
   ],
   "source": [
    "# Convert data to tensors\n",
    "input_tensor = torch.tensor(input_data.T).view(batch_size, sequence_length, input_size).float()\n",
    "target_tensor = torch.tensor(target_data.T).view(batch_size, sequence_length, output_size).float()\n",
    "\n",
    "print(\"input tensor shape\",input_tensor.shape)\n",
    "print(\"Target tensor shape\",target_tensor.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "5b7d82d8",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Convert test data to tensors\n",
    "test_tensor = torch.tensor(test_data.T).view(batch_size, 1, input_size).float()\n",
    "#test_target_tensor = torch.tensor(test_target.T).view(batch_size, 20, output_size).float()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "e80583ba",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 10/20000, Loss: 0.0928\n",
      "Epoch: 20/20000, Loss: 0.0391\n",
      "Epoch: 30/20000, Loss: 0.0180\n",
      "Epoch: 40/20000, Loss: 0.0069\n",
      "Epoch: 50/20000, Loss: 0.0035\n",
      "Epoch: 60/20000, Loss: 0.0025\n",
      "Epoch: 70/20000, Loss: 0.0021\n",
      "Epoch: 80/20000, Loss: 0.0018\n",
      "Epoch: 90/20000, Loss: 0.0017\n",
      "Epoch: 100/20000, Loss: 0.0015\n",
      "Epoch: 110/20000, Loss: 0.0014\n",
      "Epoch: 120/20000, Loss: 0.0012\n",
      "Epoch: 130/20000, Loss: 0.0011\n",
      "Epoch: 140/20000, Loss: 0.0010\n",
      "Epoch: 150/20000, Loss: 0.0008\n",
      "Epoch: 160/20000, Loss: 0.0007\n",
      "Epoch: 170/20000, Loss: 0.0007\n",
      "Epoch: 180/20000, Loss: 0.0006\n",
      "Epoch: 190/20000, Loss: 0.0005\n",
      "Epoch: 200/20000, Loss: 0.0004\n",
      "Epoch: 210/20000, Loss: 0.0004\n",
      "Epoch: 220/20000, Loss: 0.0003\n",
      "Epoch: 230/20000, Loss: 0.0003\n",
      "Epoch: 240/20000, Loss: 0.0003\n",
      "Epoch: 250/20000, Loss: 0.0002\n",
      "Epoch: 260/20000, Loss: 0.0002\n",
      "Epoch: 270/20000, Loss: 0.0003\n",
      "Epoch: 280/20000, Loss: 0.0002\n",
      "Epoch: 290/20000, Loss: 0.0002\n",
      "Epoch: 300/20000, Loss: 0.0002\n",
      "Epoch: 310/20000, Loss: 0.0002\n",
      "Epoch: 320/20000, Loss: 0.0001\n",
      "Epoch: 330/20000, Loss: 0.0001\n",
      "Epoch: 340/20000, Loss: 0.0001\n",
      "Epoch: 350/20000, Loss: 0.0001\n",
      "Epoch: 360/20000, Loss: 0.0001\n",
      "Epoch: 370/20000, Loss: 0.0001\n",
      "Epoch: 380/20000, Loss: 0.0001\n",
      "Epoch: 390/20000, Loss: 0.0001\n",
      "Epoch: 400/20000, Loss: 0.0001\n",
      "Epoch: 410/20000, Loss: 0.0001\n",
      "Epoch: 420/20000, Loss: 0.0001\n",
      "Epoch: 430/20000, Loss: 0.0001\n",
      "Epoch: 440/20000, Loss: 0.0001\n",
      "Epoch: 450/20000, Loss: 0.0001\n",
      "Epoch: 460/20000, Loss: 0.0001\n",
      "Epoch: 470/20000, Loss: 0.0001\n",
      "Epoch: 480/20000, Loss: 0.0001\n",
      "Epoch: 490/20000, Loss: 0.0001\n",
      "Epoch: 500/20000, Loss: 0.0001\n",
      "Epoch: 510/20000, Loss: 0.0001\n",
      "Epoch: 520/20000, Loss: 0.0001\n",
      "Epoch: 530/20000, Loss: 0.0001\n",
      "Epoch: 540/20000, Loss: 0.0001\n",
      "Epoch: 550/20000, Loss: 0.0001\n",
      "Epoch: 560/20000, Loss: 0.0001\n",
      "Epoch: 570/20000, Loss: 0.0000\n",
      "Epoch: 580/20000, Loss: 0.0000\n",
      "Epoch: 590/20000, Loss: 0.0000\n",
      "Epoch: 600/20000, Loss: 0.0000\n",
      "Epoch: 610/20000, Loss: 0.0000\n",
      "Epoch: 620/20000, Loss: 0.0000\n",
      "Epoch: 630/20000, Loss: 0.0000\n",
      "Epoch: 640/20000, Loss: 0.0000\n",
      "Epoch: 650/20000, Loss: 0.0000\n",
      "Epoch: 660/20000, Loss: 0.0000\n",
      "Epoch: 670/20000, Loss: 0.0002\n",
      "Epoch: 680/20000, Loss: 0.0001\n",
      "Epoch: 690/20000, Loss: 0.0000\n",
      "Epoch: 700/20000, Loss: 0.0000\n",
      "Epoch: 710/20000, Loss: 0.0000\n",
      "Epoch: 720/20000, Loss: 0.0000\n",
      "Epoch: 730/20000, Loss: 0.0000\n",
      "Epoch: 740/20000, Loss: 0.0000\n",
      "Epoch: 750/20000, Loss: 0.0000\n",
      "Epoch: 760/20000, Loss: 0.0000\n",
      "Epoch: 770/20000, Loss: 0.0000\n",
      "Epoch: 780/20000, Loss: 0.0000\n",
      "Epoch: 790/20000, Loss: 0.0000\n",
      "Epoch: 800/20000, Loss: 0.0000\n",
      "Epoch: 810/20000, Loss: 0.0000\n",
      "Epoch: 820/20000, Loss: 0.0000\n",
      "Epoch: 830/20000, Loss: 0.0000\n",
      "Epoch: 840/20000, Loss: 0.0000\n",
      "Epoch: 850/20000, Loss: 0.0000\n",
      "Epoch: 860/20000, Loss: 0.0000\n",
      "Epoch: 870/20000, Loss: 0.0000\n",
      "Epoch: 880/20000, Loss: 0.0000\n",
      "Epoch: 890/20000, Loss: 0.0000\n",
      "Epoch: 900/20000, Loss: 0.0000\n",
      "Epoch: 910/20000, Loss: 0.0000\n",
      "Epoch: 920/20000, Loss: 0.0000\n",
      "Epoch: 930/20000, Loss: 0.0000\n",
      "Epoch: 940/20000, Loss: 0.0000\n",
      "Epoch: 950/20000, Loss: 0.0002\n",
      "Epoch: 960/20000, Loss: 0.0000\n",
      "Epoch: 970/20000, Loss: 0.0000\n",
      "Epoch: 980/20000, Loss: 0.0000\n",
      "Epoch: 990/20000, Loss: 0.0000\n",
      "Epoch: 1000/20000, Loss: 0.0000\n",
      "Epoch: 1010/20000, Loss: 0.0000\n",
      "Epoch: 1020/20000, Loss: 0.0000\n",
      "Epoch: 1030/20000, Loss: 0.0000\n",
      "Epoch: 1040/20000, Loss: 0.0000\n",
      "Epoch: 1050/20000, Loss: 0.0000\n",
      "Epoch: 1060/20000, Loss: 0.0000\n",
      "Epoch: 1070/20000, Loss: 0.0000\n",
      "Epoch: 1080/20000, Loss: 0.0000\n",
      "Epoch: 1090/20000, Loss: 0.0000\n",
      "Epoch: 1100/20000, Loss: 0.0000\n",
      "Epoch: 1110/20000, Loss: 0.0000\n",
      "Epoch: 1120/20000, Loss: 0.0000\n",
      "Epoch: 1130/20000, Loss: 0.0000\n",
      "Epoch: 1140/20000, Loss: 0.0000\n",
      "Epoch: 1150/20000, Loss: 0.0000\n",
      "Epoch: 1160/20000, Loss: 0.0000\n",
      "Epoch: 1170/20000, Loss: 0.0000\n",
      "Epoch: 1180/20000, Loss: 0.0000\n",
      "Epoch: 1190/20000, Loss: 0.0000\n",
      "Epoch: 1200/20000, Loss: 0.0000\n",
      "Epoch: 1210/20000, Loss: 0.0001\n",
      "Epoch: 1220/20000, Loss: 0.0001\n",
      "Epoch: 1230/20000, Loss: 0.0001\n",
      "Epoch: 1240/20000, Loss: 0.0000\n",
      "Epoch: 1250/20000, Loss: 0.0000\n",
      "Epoch: 1260/20000, Loss: 0.0000\n",
      "Epoch: 1270/20000, Loss: 0.0000\n",
      "Epoch: 1280/20000, Loss: 0.0000\n",
      "Epoch: 1290/20000, Loss: 0.0000\n",
      "Epoch: 1300/20000, Loss: 0.0000\n",
      "Epoch: 1310/20000, Loss: 0.0000\n",
      "Epoch: 1320/20000, Loss: 0.0000\n",
      "Epoch: 1330/20000, Loss: 0.0000\n",
      "Epoch: 1340/20000, Loss: 0.0000\n",
      "Epoch: 1350/20000, Loss: 0.0000\n",
      "Epoch: 1360/20000, Loss: 0.0000\n",
      "Epoch: 1370/20000, Loss: 0.0000\n",
      "Epoch: 1380/20000, Loss: 0.0000\n",
      "Epoch: 1390/20000, Loss: 0.0000\n",
      "Epoch: 1400/20000, Loss: 0.0000\n",
      "Epoch: 1410/20000, Loss: 0.0000\n",
      "Epoch: 1420/20000, Loss: 0.0000\n",
      "Epoch: 1430/20000, Loss: 0.0000\n",
      "Epoch: 1440/20000, Loss: 0.0000\n",
      "Epoch: 1450/20000, Loss: 0.0000\n",
      "Epoch: 1460/20000, Loss: 0.0000\n",
      "Epoch: 1470/20000, Loss: 0.0000\n",
      "Epoch: 1480/20000, Loss: 0.0000\n",
      "Epoch: 1490/20000, Loss: 0.0000\n",
      "Epoch: 1500/20000, Loss: 0.0001\n",
      "Epoch: 1510/20000, Loss: 0.0000\n",
      "Epoch: 1520/20000, Loss: 0.0000\n",
      "Epoch: 1530/20000, Loss: 0.0000\n",
      "Epoch: 1540/20000, Loss: 0.0000\n",
      "Epoch: 1550/20000, Loss: 0.0000\n",
      "Epoch: 1560/20000, Loss: 0.0000\n",
      "Epoch: 1570/20000, Loss: 0.0000\n",
      "Epoch: 1580/20000, Loss: 0.0000\n",
      "Epoch: 1590/20000, Loss: 0.0000\n",
      "Epoch: 1600/20000, Loss: 0.0000\n",
      "Epoch: 1610/20000, Loss: 0.0000\n",
      "Epoch: 1620/20000, Loss: 0.0000\n",
      "Epoch: 1630/20000, Loss: 0.0000\n",
      "Epoch: 1640/20000, Loss: 0.0000\n",
      "Epoch: 1650/20000, Loss: 0.0000\n",
      "Epoch: 1660/20000, Loss: 0.0000\n",
      "Epoch: 1670/20000, Loss: 0.0000\n",
      "Epoch: 1680/20000, Loss: 0.0000\n",
      "Epoch: 1690/20000, Loss: 0.0000\n",
      "Epoch: 1700/20000, Loss: 0.0000\n",
      "Epoch: 1710/20000, Loss: 0.0000\n",
      "Epoch: 1720/20000, Loss: 0.0000\n",
      "Epoch: 1730/20000, Loss: 0.0000\n",
      "Epoch: 1740/20000, Loss: 0.0000\n",
      "Epoch: 1750/20000, Loss: 0.0001\n",
      "Epoch: 1760/20000, Loss: 0.0001\n",
      "Epoch: 1770/20000, Loss: 0.0000\n",
      "Epoch: 1780/20000, Loss: 0.0000\n",
      "Epoch: 1790/20000, Loss: 0.0000\n",
      "Epoch: 1800/20000, Loss: 0.0000\n",
      "Epoch: 1810/20000, Loss: 0.0000\n",
      "Epoch: 1820/20000, Loss: 0.0000\n",
      "Epoch: 1830/20000, Loss: 0.0000\n",
      "Epoch: 1840/20000, Loss: 0.0000\n",
      "Epoch: 1850/20000, Loss: 0.0000\n",
      "Epoch: 1860/20000, Loss: 0.0000\n",
      "Epoch: 1870/20000, Loss: 0.0000\n",
      "Epoch: 1880/20000, Loss: 0.0000\n",
      "Epoch: 1890/20000, Loss: 0.0000\n",
      "Epoch: 1900/20000, Loss: 0.0000\n",
      "Epoch: 1910/20000, Loss: 0.0000\n",
      "Epoch: 1920/20000, Loss: 0.0000\n",
      "Epoch: 1930/20000, Loss: 0.0000\n",
      "Epoch: 1940/20000, Loss: 0.0000\n",
      "Epoch: 1950/20000, Loss: 0.0000\n",
      "Epoch: 1960/20000, Loss: 0.0000\n",
      "Epoch: 1970/20000, Loss: 0.0000\n",
      "Epoch: 1980/20000, Loss: 0.0000\n",
      "Epoch: 1990/20000, Loss: 0.0000\n",
      "Epoch: 2000/20000, Loss: 0.0000\n",
      "Epoch: 2010/20000, Loss: 0.0000\n",
      "Epoch: 2020/20000, Loss: 0.0000\n",
      "Epoch: 2030/20000, Loss: 0.0000\n",
      "Epoch: 2040/20000, Loss: 0.0000\n",
      "Epoch: 2050/20000, Loss: 0.0000\n",
      "Epoch: 2060/20000, Loss: 0.0000\n",
      "Epoch: 2070/20000, Loss: 0.0000\n",
      "Epoch: 2080/20000, Loss: 0.0000\n",
      "Epoch: 2090/20000, Loss: 0.0000\n",
      "Epoch: 2100/20000, Loss: 0.0000\n",
      "Epoch: 2110/20000, Loss: 0.0000\n",
      "Epoch: 2120/20000, Loss: 0.0000\n",
      "Epoch: 2130/20000, Loss: 0.0000\n",
      "Epoch: 2140/20000, Loss: 0.0000\n",
      "Epoch: 2150/20000, Loss: 0.0000\n",
      "Epoch: 2160/20000, Loss: 0.0000\n",
      "Epoch: 2170/20000, Loss: 0.0000\n",
      "Epoch: 2180/20000, Loss: 0.0000\n",
      "Epoch: 2190/20000, Loss: 0.0001\n",
      "Epoch: 2200/20000, Loss: 0.0001\n",
      "Epoch: 2210/20000, Loss: 0.0000\n",
      "Epoch: 2220/20000, Loss: 0.0000\n",
      "Epoch: 2230/20000, Loss: 0.0000\n",
      "Epoch: 2240/20000, Loss: 0.0000\n",
      "Epoch: 2250/20000, Loss: 0.0000\n",
      "Epoch: 2260/20000, Loss: 0.0000\n",
      "Epoch: 2270/20000, Loss: 0.0000\n",
      "Epoch: 2280/20000, Loss: 0.0000\n",
      "Epoch: 2290/20000, Loss: 0.0000\n",
      "Epoch: 2300/20000, Loss: 0.0000\n",
      "Epoch: 2310/20000, Loss: 0.0000\n",
      "Epoch: 2320/20000, Loss: 0.0000\n",
      "Epoch: 2330/20000, Loss: 0.0000\n",
      "Epoch: 2340/20000, Loss: 0.0000\n",
      "Epoch: 2350/20000, Loss: 0.0000\n",
      "Epoch: 2360/20000, Loss: 0.0000\n",
      "Epoch: 2370/20000, Loss: 0.0000\n",
      "Epoch: 2380/20000, Loss: 0.0000\n",
      "Epoch: 2390/20000, Loss: 0.0000\n",
      "Epoch: 2400/20000, Loss: 0.0003\n",
      "Epoch: 2410/20000, Loss: 0.0001\n",
      "Epoch: 2420/20000, Loss: 0.0000\n",
      "Epoch: 2430/20000, Loss: 0.0000\n",
      "Epoch: 2440/20000, Loss: 0.0000\n",
      "Epoch: 2450/20000, Loss: 0.0000\n",
      "Epoch: 2460/20000, Loss: 0.0000\n",
      "Epoch: 2470/20000, Loss: 0.0000\n",
      "Epoch: 2480/20000, Loss: 0.0000\n",
      "Epoch: 2490/20000, Loss: 0.0000\n",
      "Epoch: 2500/20000, Loss: 0.0000\n",
      "Epoch: 2510/20000, Loss: 0.0000\n",
      "Epoch: 2520/20000, Loss: 0.0000\n",
      "Epoch: 2530/20000, Loss: 0.0000\n",
      "Epoch: 2540/20000, Loss: 0.0000\n",
      "Epoch: 2550/20000, Loss: 0.0000\n",
      "Epoch: 2560/20000, Loss: 0.0000\n",
      "Epoch: 2570/20000, Loss: 0.0000\n",
      "Epoch: 2580/20000, Loss: 0.0000\n",
      "Epoch: 2590/20000, Loss: 0.0000\n",
      "Epoch: 2600/20000, Loss: 0.0000\n",
      "Epoch: 2610/20000, Loss: 0.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 2620/20000, Loss: 0.0000\n",
      "Epoch: 2630/20000, Loss: 0.0000\n",
      "Epoch: 2640/20000, Loss: 0.0000\n",
      "Epoch: 2650/20000, Loss: 0.0000\n",
      "Epoch: 2660/20000, Loss: 0.0000\n",
      "Epoch: 2670/20000, Loss: 0.0000\n",
      "Epoch: 2680/20000, Loss: 0.0000\n",
      "Epoch: 2690/20000, Loss: 0.0000\n",
      "Epoch: 2700/20000, Loss: 0.0000\n",
      "Epoch: 2710/20000, Loss: 0.0000\n",
      "Epoch: 2720/20000, Loss: 0.0000\n",
      "Epoch: 2730/20000, Loss: 0.0000\n",
      "Epoch: 2740/20000, Loss: 0.0000\n",
      "Epoch: 2750/20000, Loss: 0.0000\n",
      "Epoch: 2760/20000, Loss: 0.0000\n",
      "Epoch: 2770/20000, Loss: 0.0000\n",
      "Epoch: 2780/20000, Loss: 0.0000\n",
      "Epoch: 2790/20000, Loss: 0.0000\n",
      "Epoch: 2800/20000, Loss: 0.0000\n",
      "Epoch: 2810/20000, Loss: 0.0000\n",
      "Epoch: 2820/20000, Loss: 0.0000\n",
      "Epoch: 2830/20000, Loss: 0.0000\n",
      "Epoch: 2840/20000, Loss: 0.0001\n",
      "Epoch: 2850/20000, Loss: 0.0000\n",
      "Epoch: 2860/20000, Loss: 0.0000\n",
      "Epoch: 2870/20000, Loss: 0.0000\n",
      "Epoch: 2880/20000, Loss: 0.0000\n",
      "Epoch: 2890/20000, Loss: 0.0000\n",
      "Epoch: 2900/20000, Loss: 0.0000\n",
      "Epoch: 2910/20000, Loss: 0.0000\n",
      "Epoch: 2920/20000, Loss: 0.0000\n",
      "Epoch: 2930/20000, Loss: 0.0000\n",
      "Epoch: 2940/20000, Loss: 0.0000\n",
      "Epoch: 2950/20000, Loss: 0.0000\n",
      "Epoch: 2960/20000, Loss: 0.0000\n",
      "Epoch: 2970/20000, Loss: 0.0000\n",
      "Epoch: 2980/20000, Loss: 0.0000\n",
      "Epoch: 2990/20000, Loss: 0.0000\n",
      "Epoch: 3000/20000, Loss: 0.0000\n",
      "Epoch: 3010/20000, Loss: 0.0000\n",
      "Epoch: 3020/20000, Loss: 0.0000\n",
      "Epoch: 3030/20000, Loss: 0.0000\n",
      "Epoch: 3040/20000, Loss: 0.0001\n",
      "Epoch: 3050/20000, Loss: 0.0001\n",
      "Epoch: 3060/20000, Loss: 0.0000\n",
      "Epoch: 3070/20000, Loss: 0.0000\n",
      "Epoch: 3080/20000, Loss: 0.0000\n",
      "Epoch: 3090/20000, Loss: 0.0000\n",
      "Epoch: 3100/20000, Loss: 0.0000\n",
      "Epoch: 3110/20000, Loss: 0.0000\n",
      "Epoch: 3120/20000, Loss: 0.0000\n",
      "Epoch: 3130/20000, Loss: 0.0000\n",
      "Epoch: 3140/20000, Loss: 0.0000\n",
      "Epoch: 3150/20000, Loss: 0.0000\n",
      "Epoch: 3160/20000, Loss: 0.0000\n",
      "Epoch: 3170/20000, Loss: 0.0000\n",
      "Epoch: 3180/20000, Loss: 0.0000\n",
      "Epoch: 3190/20000, Loss: 0.0000\n",
      "Epoch: 3200/20000, Loss: 0.0000\n",
      "Epoch: 3210/20000, Loss: 0.0000\n",
      "Epoch: 3220/20000, Loss: 0.0000\n",
      "Epoch: 3230/20000, Loss: 0.0000\n",
      "Epoch: 3240/20000, Loss: 0.0000\n",
      "Epoch: 3250/20000, Loss: 0.0000\n",
      "Epoch: 3260/20000, Loss: 0.0000\n",
      "Epoch: 3270/20000, Loss: 0.0000\n",
      "Epoch: 3280/20000, Loss: 0.0000\n",
      "Epoch: 3290/20000, Loss: 0.0000\n",
      "Epoch: 3300/20000, Loss: 0.0000\n",
      "Epoch: 3310/20000, Loss: 0.0000\n",
      "Epoch: 3320/20000, Loss: 0.0000\n",
      "Epoch: 3330/20000, Loss: 0.0000\n",
      "Epoch: 3340/20000, Loss: 0.0000\n",
      "Epoch: 3350/20000, Loss: 0.0000\n",
      "Epoch: 3360/20000, Loss: 0.0000\n",
      "Epoch: 3370/20000, Loss: 0.0000\n",
      "Epoch: 3380/20000, Loss: 0.0000\n",
      "Epoch: 3390/20000, Loss: 0.0000\n",
      "Epoch: 3400/20000, Loss: 0.0000\n",
      "Epoch: 3410/20000, Loss: 0.0000\n",
      "Epoch: 3420/20000, Loss: 0.0000\n",
      "Epoch: 3430/20000, Loss: 0.0000\n",
      "Epoch: 3440/20000, Loss: 0.0000\n",
      "Epoch: 3450/20000, Loss: 0.0000\n",
      "Epoch: 3460/20000, Loss: 0.0003\n",
      "Epoch: 3470/20000, Loss: 0.0000\n",
      "Epoch: 3480/20000, Loss: 0.0000\n",
      "Epoch: 3490/20000, Loss: 0.0000\n",
      "Epoch: 3500/20000, Loss: 0.0000\n",
      "Epoch: 3510/20000, Loss: 0.0000\n",
      "Epoch: 3520/20000, Loss: 0.0000\n",
      "Epoch: 3530/20000, Loss: 0.0000\n",
      "Epoch: 3540/20000, Loss: 0.0000\n",
      "Epoch: 3550/20000, Loss: 0.0000\n",
      "Epoch: 3560/20000, Loss: 0.0000\n",
      "Epoch: 3570/20000, Loss: 0.0000\n",
      "Epoch: 3580/20000, Loss: 0.0000\n",
      "Epoch: 3590/20000, Loss: 0.0000\n",
      "Epoch: 3600/20000, Loss: 0.0000\n",
      "Epoch: 3610/20000, Loss: 0.0000\n",
      "Epoch: 3620/20000, Loss: 0.0000\n",
      "Epoch: 3630/20000, Loss: 0.0000\n",
      "Epoch: 3640/20000, Loss: 0.0000\n",
      "Epoch: 3650/20000, Loss: 0.0000\n",
      "Epoch: 3660/20000, Loss: 0.0000\n",
      "Epoch: 3670/20000, Loss: 0.0002\n",
      "Epoch: 3680/20000, Loss: 0.0001\n",
      "Epoch: 3690/20000, Loss: 0.0000\n",
      "Epoch: 3700/20000, Loss: 0.0000\n",
      "Epoch: 3710/20000, Loss: 0.0000\n",
      "Epoch: 3720/20000, Loss: 0.0000\n",
      "Epoch: 3730/20000, Loss: 0.0000\n",
      "Epoch: 3740/20000, Loss: 0.0000\n",
      "Epoch: 3750/20000, Loss: 0.0000\n",
      "Epoch: 3760/20000, Loss: 0.0000\n",
      "Epoch: 3770/20000, Loss: 0.0000\n",
      "Epoch: 3780/20000, Loss: 0.0000\n",
      "Epoch: 3790/20000, Loss: 0.0000\n",
      "Epoch: 3800/20000, Loss: 0.0000\n",
      "Epoch: 3810/20000, Loss: 0.0000\n",
      "Epoch: 3820/20000, Loss: 0.0000\n",
      "Epoch: 3830/20000, Loss: 0.0000\n",
      "Epoch: 3840/20000, Loss: 0.0000\n",
      "Epoch: 3850/20000, Loss: 0.0000\n",
      "Epoch: 3860/20000, Loss: 0.0000\n",
      "Epoch: 3870/20000, Loss: 0.0001\n",
      "Epoch: 3880/20000, Loss: 0.0001\n",
      "Epoch: 3890/20000, Loss: 0.0000\n",
      "Epoch: 3900/20000, Loss: 0.0000\n",
      "Epoch: 3910/20000, Loss: 0.0000\n",
      "Epoch: 3920/20000, Loss: 0.0000\n",
      "Epoch: 3930/20000, Loss: 0.0000\n",
      "Epoch: 3940/20000, Loss: 0.0000\n",
      "Epoch: 3950/20000, Loss: 0.0000\n",
      "Epoch: 3960/20000, Loss: 0.0000\n",
      "Epoch: 3970/20000, Loss: 0.0000\n",
      "Epoch: 3980/20000, Loss: 0.0000\n",
      "Epoch: 3990/20000, Loss: 0.0000\n",
      "Epoch: 4000/20000, Loss: 0.0000\n",
      "Epoch: 4010/20000, Loss: 0.0000\n",
      "Epoch: 4020/20000, Loss: 0.0000\n",
      "Epoch: 4030/20000, Loss: 0.0000\n",
      "Epoch: 4040/20000, Loss: 0.0000\n",
      "Epoch: 4050/20000, Loss: 0.0000\n",
      "Epoch: 4060/20000, Loss: 0.0000\n",
      "Epoch: 4070/20000, Loss: 0.0000\n",
      "Epoch: 4080/20000, Loss: 0.0000\n",
      "Epoch: 4090/20000, Loss: 0.0000\n",
      "Epoch: 4100/20000, Loss: 0.0000\n",
      "Epoch: 4110/20000, Loss: 0.0000\n",
      "Epoch: 4120/20000, Loss: 0.0000\n",
      "Epoch: 4130/20000, Loss: 0.0000\n",
      "Epoch: 4140/20000, Loss: 0.0000\n",
      "Epoch: 4150/20000, Loss: 0.0000\n",
      "Epoch: 4160/20000, Loss: 0.0000\n",
      "Epoch: 4170/20000, Loss: 0.0000\n",
      "Epoch: 4180/20000, Loss: 0.0000\n",
      "Epoch: 4190/20000, Loss: 0.0000\n",
      "Epoch: 4200/20000, Loss: 0.0000\n",
      "Epoch: 4210/20000, Loss: 0.0000\n",
      "Epoch: 4220/20000, Loss: 0.0000\n",
      "Epoch: 4230/20000, Loss: 0.0000\n",
      "Epoch: 4240/20000, Loss: 0.0000\n",
      "Epoch: 4250/20000, Loss: 0.0000\n",
      "Epoch: 4260/20000, Loss: 0.0002\n",
      "Epoch: 4270/20000, Loss: 0.0000\n",
      "Epoch: 4280/20000, Loss: 0.0000\n",
      "Epoch: 4290/20000, Loss: 0.0000\n",
      "Epoch: 4300/20000, Loss: 0.0000\n",
      "Epoch: 4310/20000, Loss: 0.0000\n",
      "Epoch: 4320/20000, Loss: 0.0000\n",
      "Epoch: 4330/20000, Loss: 0.0000\n",
      "Epoch: 4340/20000, Loss: 0.0000\n",
      "Epoch: 4350/20000, Loss: 0.0000\n",
      "Epoch: 4360/20000, Loss: 0.0000\n",
      "Epoch: 4370/20000, Loss: 0.0000\n",
      "Epoch: 4380/20000, Loss: 0.0000\n",
      "Epoch: 4390/20000, Loss: 0.0000\n",
      "Epoch: 4400/20000, Loss: 0.0000\n",
      "Epoch: 4410/20000, Loss: 0.0000\n",
      "Epoch: 4420/20000, Loss: 0.0000\n",
      "Epoch: 4430/20000, Loss: 0.0000\n",
      "Epoch: 4440/20000, Loss: 0.0000\n",
      "Epoch: 4450/20000, Loss: 0.0001\n",
      "Epoch: 4460/20000, Loss: 0.0001\n",
      "Epoch: 4470/20000, Loss: 0.0000\n",
      "Epoch: 4480/20000, Loss: 0.0000\n",
      "Epoch: 4490/20000, Loss: 0.0000\n",
      "Epoch: 4500/20000, Loss: 0.0000\n",
      "Epoch: 4510/20000, Loss: 0.0000\n",
      "Epoch: 4520/20000, Loss: 0.0000\n",
      "Epoch: 4530/20000, Loss: 0.0000\n",
      "Epoch: 4540/20000, Loss: 0.0000\n",
      "Epoch: 4550/20000, Loss: 0.0000\n",
      "Epoch: 4560/20000, Loss: 0.0000\n",
      "Epoch: 4570/20000, Loss: 0.0000\n",
      "Epoch: 4580/20000, Loss: 0.0000\n",
      "Epoch: 4590/20000, Loss: 0.0000\n",
      "Epoch: 4600/20000, Loss: 0.0000\n",
      "Epoch: 4610/20000, Loss: 0.0000\n",
      "Epoch: 4620/20000, Loss: 0.0000\n",
      "Epoch: 4630/20000, Loss: 0.0000\n",
      "Epoch: 4640/20000, Loss: 0.0002\n",
      "Epoch: 4650/20000, Loss: 0.0001\n",
      "Epoch: 4660/20000, Loss: 0.0000\n",
      "Epoch: 4670/20000, Loss: 0.0000\n",
      "Epoch: 4680/20000, Loss: 0.0000\n",
      "Epoch: 4690/20000, Loss: 0.0000\n",
      "Epoch: 4700/20000, Loss: 0.0000\n",
      "Epoch: 4710/20000, Loss: 0.0000\n",
      "Epoch: 4720/20000, Loss: 0.0000\n",
      "Epoch: 4730/20000, Loss: 0.0000\n",
      "Epoch: 4740/20000, Loss: 0.0000\n",
      "Epoch: 4750/20000, Loss: 0.0000\n",
      "Epoch: 4760/20000, Loss: 0.0000\n",
      "Epoch: 4770/20000, Loss: 0.0000\n",
      "Epoch: 4780/20000, Loss: 0.0000\n",
      "Epoch: 4790/20000, Loss: 0.0000\n",
      "Epoch: 4800/20000, Loss: 0.0000\n",
      "Epoch: 4810/20000, Loss: 0.0000\n",
      "Epoch: 4820/20000, Loss: 0.0000\n",
      "Epoch: 4830/20000, Loss: 0.0000\n",
      "Epoch: 4840/20000, Loss: 0.0001\n",
      "Epoch: 4850/20000, Loss: 0.0000\n",
      "Epoch: 4860/20000, Loss: 0.0000\n",
      "Epoch: 4870/20000, Loss: 0.0000\n",
      "Epoch: 4880/20000, Loss: 0.0000\n",
      "Epoch: 4890/20000, Loss: 0.0000\n",
      "Epoch: 4900/20000, Loss: 0.0000\n",
      "Epoch: 4910/20000, Loss: 0.0000\n",
      "Epoch: 4920/20000, Loss: 0.0000\n",
      "Epoch: 4930/20000, Loss: 0.0000\n",
      "Epoch: 4940/20000, Loss: 0.0000\n",
      "Epoch: 4950/20000, Loss: 0.0000\n",
      "Epoch: 4960/20000, Loss: 0.0000\n",
      "Epoch: 4970/20000, Loss: 0.0000\n",
      "Epoch: 4980/20000, Loss: 0.0000\n",
      "Epoch: 4990/20000, Loss: 0.0000\n",
      "Epoch: 5000/20000, Loss: 0.0000\n",
      "Epoch: 5010/20000, Loss: 0.0000\n",
      "Epoch: 5020/20000, Loss: 0.0000\n",
      "Epoch: 5030/20000, Loss: 0.0000\n",
      "Epoch: 5040/20000, Loss: 0.0001\n",
      "Epoch: 5050/20000, Loss: 0.0000\n",
      "Epoch: 5060/20000, Loss: 0.0000\n",
      "Epoch: 5070/20000, Loss: 0.0000\n",
      "Epoch: 5080/20000, Loss: 0.0000\n",
      "Epoch: 5090/20000, Loss: 0.0000\n",
      "Epoch: 5100/20000, Loss: 0.0000\n",
      "Epoch: 5110/20000, Loss: 0.0000\n",
      "Epoch: 5120/20000, Loss: 0.0000\n",
      "Epoch: 5130/20000, Loss: 0.0000\n",
      "Epoch: 5140/20000, Loss: 0.0000\n",
      "Epoch: 5150/20000, Loss: 0.0000\n",
      "Epoch: 5160/20000, Loss: 0.0000\n",
      "Epoch: 5170/20000, Loss: 0.0000\n",
      "Epoch: 5180/20000, Loss: 0.0000\n",
      "Epoch: 5190/20000, Loss: 0.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 5200/20000, Loss: 0.0000\n",
      "Epoch: 5210/20000, Loss: 0.0000\n",
      "Epoch: 5220/20000, Loss: 0.0002\n",
      "Epoch: 5230/20000, Loss: 0.0000\n",
      "Epoch: 5240/20000, Loss: 0.0000\n",
      "Epoch: 5250/20000, Loss: 0.0000\n",
      "Epoch: 5260/20000, Loss: 0.0000\n",
      "Epoch: 5270/20000, Loss: 0.0000\n",
      "Epoch: 5280/20000, Loss: 0.0000\n",
      "Epoch: 5290/20000, Loss: 0.0000\n",
      "Epoch: 5300/20000, Loss: 0.0000\n",
      "Epoch: 5310/20000, Loss: 0.0000\n",
      "Epoch: 5320/20000, Loss: 0.0000\n",
      "Epoch: 5330/20000, Loss: 0.0000\n",
      "Epoch: 5340/20000, Loss: 0.0000\n",
      "Epoch: 5350/20000, Loss: 0.0000\n",
      "Epoch: 5360/20000, Loss: 0.0000\n",
      "Epoch: 5370/20000, Loss: 0.0000\n",
      "Epoch: 5380/20000, Loss: 0.0000\n",
      "Epoch: 5390/20000, Loss: 0.0000\n",
      "Epoch: 5400/20000, Loss: 0.0000\n",
      "Epoch: 5410/20000, Loss: 0.0000\n",
      "Epoch: 5420/20000, Loss: 0.0000\n",
      "Epoch: 5430/20000, Loss: 0.0000\n",
      "Epoch: 5440/20000, Loss: 0.0000\n",
      "Epoch: 5450/20000, Loss: 0.0000\n",
      "Epoch: 5460/20000, Loss: 0.0000\n",
      "Epoch: 5470/20000, Loss: 0.0000\n",
      "Epoch: 5480/20000, Loss: 0.0000\n",
      "Epoch: 5490/20000, Loss: 0.0000\n",
      "Epoch: 5500/20000, Loss: 0.0000\n",
      "Epoch: 5510/20000, Loss: 0.0000\n",
      "Epoch: 5520/20000, Loss: 0.0000\n",
      "Epoch: 5530/20000, Loss: 0.0000\n",
      "Epoch: 5540/20000, Loss: 0.0000\n",
      "Epoch: 5550/20000, Loss: 0.0000\n",
      "Epoch: 5560/20000, Loss: 0.0000\n",
      "Epoch: 5570/20000, Loss: 0.0000\n",
      "Epoch: 5580/20000, Loss: 0.0000\n",
      "Epoch: 5590/20000, Loss: 0.0003\n",
      "Epoch: 5600/20000, Loss: 0.0000\n",
      "Epoch: 5610/20000, Loss: 0.0000\n",
      "Epoch: 5620/20000, Loss: 0.0000\n",
      "Epoch: 5630/20000, Loss: 0.0000\n",
      "Epoch: 5640/20000, Loss: 0.0000\n",
      "Epoch: 5650/20000, Loss: 0.0000\n",
      "Epoch: 5660/20000, Loss: 0.0000\n",
      "Epoch: 5670/20000, Loss: 0.0000\n",
      "Epoch: 5680/20000, Loss: 0.0000\n",
      "Epoch: 5690/20000, Loss: 0.0000\n",
      "Epoch: 5700/20000, Loss: 0.0000\n",
      "Epoch: 5710/20000, Loss: 0.0000\n",
      "Epoch: 5720/20000, Loss: 0.0000\n",
      "Epoch: 5730/20000, Loss: 0.0000\n",
      "Epoch: 5740/20000, Loss: 0.0000\n",
      "Epoch: 5750/20000, Loss: 0.0000\n",
      "Epoch: 5760/20000, Loss: 0.0000\n",
      "Epoch: 5770/20000, Loss: 0.0000\n",
      "Epoch: 5780/20000, Loss: 0.0000\n",
      "Epoch: 5790/20000, Loss: 0.0000\n",
      "Epoch: 5800/20000, Loss: 0.0000\n",
      "Epoch: 5810/20000, Loss: 0.0000\n",
      "Epoch: 5820/20000, Loss: 0.0001\n",
      "Epoch: 5830/20000, Loss: 0.0001\n",
      "Epoch: 5840/20000, Loss: 0.0000\n",
      "Epoch: 5850/20000, Loss: 0.0000\n",
      "Epoch: 5860/20000, Loss: 0.0000\n",
      "Epoch: 5870/20000, Loss: 0.0000\n",
      "Epoch: 5880/20000, Loss: 0.0000\n",
      "Epoch: 5890/20000, Loss: 0.0000\n",
      "Epoch: 5900/20000, Loss: 0.0000\n",
      "Epoch: 5910/20000, Loss: 0.0000\n",
      "Epoch: 5920/20000, Loss: 0.0000\n",
      "Epoch: 5930/20000, Loss: 0.0000\n",
      "Epoch: 5940/20000, Loss: 0.0000\n",
      "Epoch: 5950/20000, Loss: 0.0000\n",
      "Epoch: 5960/20000, Loss: 0.0000\n",
      "Epoch: 5970/20000, Loss: 0.0000\n",
      "Epoch: 5980/20000, Loss: 0.0000\n",
      "Epoch: 5990/20000, Loss: 0.0000\n",
      "Epoch: 6000/20000, Loss: 0.0000\n",
      "Epoch: 6010/20000, Loss: 0.0000\n",
      "Epoch: 6020/20000, Loss: 0.0000\n",
      "Epoch: 6030/20000, Loss: 0.0000\n",
      "Epoch: 6040/20000, Loss: 0.0000\n",
      "Epoch: 6050/20000, Loss: 0.0003\n",
      "Epoch: 6060/20000, Loss: 0.0000\n",
      "Epoch: 6070/20000, Loss: 0.0000\n",
      "Epoch: 6080/20000, Loss: 0.0000\n",
      "Epoch: 6090/20000, Loss: 0.0000\n",
      "Epoch: 6100/20000, Loss: 0.0000\n",
      "Epoch: 6110/20000, Loss: 0.0000\n",
      "Epoch: 6120/20000, Loss: 0.0000\n",
      "Epoch: 6130/20000, Loss: 0.0000\n",
      "Epoch: 6140/20000, Loss: 0.0000\n",
      "Epoch: 6150/20000, Loss: 0.0000\n",
      "Epoch: 6160/20000, Loss: 0.0000\n",
      "Epoch: 6170/20000, Loss: 0.0000\n",
      "Epoch: 6180/20000, Loss: 0.0000\n",
      "Epoch: 6190/20000, Loss: 0.0000\n",
      "Epoch: 6200/20000, Loss: 0.0000\n",
      "Epoch: 6210/20000, Loss: 0.0000\n",
      "Epoch: 6220/20000, Loss: 0.0000\n",
      "Epoch: 6230/20000, Loss: 0.0000\n",
      "Epoch: 6240/20000, Loss: 0.0000\n",
      "Epoch: 6250/20000, Loss: 0.0000\n",
      "Epoch: 6260/20000, Loss: 0.0000\n",
      "Epoch: 6270/20000, Loss: 0.0000\n",
      "Epoch: 6280/20000, Loss: 0.0000\n",
      "Epoch: 6290/20000, Loss: 0.0001\n",
      "Epoch: 6300/20000, Loss: 0.0000\n",
      "Epoch: 6310/20000, Loss: 0.0000\n",
      "Epoch: 6320/20000, Loss: 0.0000\n",
      "Epoch: 6330/20000, Loss: 0.0000\n",
      "Epoch: 6340/20000, Loss: 0.0000\n",
      "Epoch: 6350/20000, Loss: 0.0000\n",
      "Epoch: 6360/20000, Loss: 0.0000\n",
      "Epoch: 6370/20000, Loss: 0.0000\n",
      "Epoch: 6380/20000, Loss: 0.0000\n",
      "Epoch: 6390/20000, Loss: 0.0000\n",
      "Epoch: 6400/20000, Loss: 0.0000\n",
      "Epoch: 6410/20000, Loss: 0.0000\n",
      "Epoch: 6420/20000, Loss: 0.0000\n",
      "Epoch: 6430/20000, Loss: 0.0000\n",
      "Epoch: 6440/20000, Loss: 0.0000\n",
      "Epoch: 6450/20000, Loss: 0.0000\n",
      "Epoch: 6460/20000, Loss: 0.0000\n",
      "Epoch: 6470/20000, Loss: 0.0000\n",
      "Epoch: 6480/20000, Loss: 0.0000\n",
      "Epoch: 6490/20000, Loss: 0.0000\n",
      "Epoch: 6500/20000, Loss: 0.0000\n",
      "Epoch: 6510/20000, Loss: 0.0000\n",
      "Epoch: 6520/20000, Loss: 0.0000\n",
      "Epoch: 6530/20000, Loss: 0.0000\n",
      "Epoch: 6540/20000, Loss: 0.0000\n",
      "Epoch: 6550/20000, Loss: 0.0000\n",
      "Epoch: 6560/20000, Loss: 0.0004\n",
      "Epoch: 6570/20000, Loss: 0.0001\n",
      "Epoch: 6580/20000, Loss: 0.0000\n",
      "Epoch: 6590/20000, Loss: 0.0000\n",
      "Epoch: 6600/20000, Loss: 0.0000\n",
      "Epoch: 6610/20000, Loss: 0.0000\n",
      "Epoch: 6620/20000, Loss: 0.0000\n",
      "Epoch: 6630/20000, Loss: 0.0000\n",
      "Epoch: 6640/20000, Loss: 0.0000\n",
      "Epoch: 6650/20000, Loss: 0.0000\n",
      "Epoch: 6660/20000, Loss: 0.0000\n",
      "Epoch: 6670/20000, Loss: 0.0000\n",
      "Epoch: 6680/20000, Loss: 0.0000\n",
      "Epoch: 6690/20000, Loss: 0.0000\n",
      "Epoch: 6700/20000, Loss: 0.0000\n",
      "Epoch: 6710/20000, Loss: 0.0000\n",
      "Epoch: 6720/20000, Loss: 0.0000\n",
      "Epoch: 6730/20000, Loss: 0.0000\n",
      "Epoch: 6740/20000, Loss: 0.0000\n",
      "Epoch: 6750/20000, Loss: 0.0000\n",
      "Epoch: 6760/20000, Loss: 0.0000\n",
      "Epoch: 6770/20000, Loss: 0.0000\n",
      "Epoch: 6780/20000, Loss: 0.0000\n",
      "Epoch: 6790/20000, Loss: 0.0000\n",
      "Epoch: 6800/20000, Loss: 0.0000\n",
      "Epoch: 6810/20000, Loss: 0.0000\n",
      "Epoch: 6820/20000, Loss: 0.0000\n",
      "Epoch: 6830/20000, Loss: 0.0000\n",
      "Epoch: 6840/20000, Loss: 0.0005\n",
      "Epoch: 6850/20000, Loss: 0.0001\n",
      "Epoch: 6860/20000, Loss: 0.0000\n",
      "Epoch: 6870/20000, Loss: 0.0000\n",
      "Epoch: 6880/20000, Loss: 0.0000\n",
      "Epoch: 6890/20000, Loss: 0.0000\n",
      "Epoch: 6900/20000, Loss: 0.0000\n",
      "Epoch: 6910/20000, Loss: 0.0000\n",
      "Epoch: 6920/20000, Loss: 0.0000\n",
      "Epoch: 6930/20000, Loss: 0.0000\n",
      "Epoch: 6940/20000, Loss: 0.0000\n",
      "Epoch: 6950/20000, Loss: 0.0000\n",
      "Epoch: 6960/20000, Loss: 0.0000\n",
      "Epoch: 6970/20000, Loss: 0.0000\n",
      "Epoch: 6980/20000, Loss: 0.0000\n",
      "Epoch: 6990/20000, Loss: 0.0000\n",
      "Epoch: 7000/20000, Loss: 0.0000\n",
      "Epoch: 7010/20000, Loss: 0.0000\n",
      "Epoch: 7020/20000, Loss: 0.0000\n",
      "Epoch: 7030/20000, Loss: 0.0000\n",
      "Epoch: 7040/20000, Loss: 0.0000\n",
      "Epoch: 7050/20000, Loss: 0.0000\n",
      "Epoch: 7060/20000, Loss: 0.0000\n",
      "Epoch: 7070/20000, Loss: 0.0000\n",
      "Epoch: 7080/20000, Loss: 0.0000\n",
      "Epoch: 7090/20000, Loss: 0.0000\n",
      "Epoch: 7100/20000, Loss: 0.0000\n",
      "Epoch: 7110/20000, Loss: 0.0000\n",
      "Epoch: 7120/20000, Loss: 0.0000\n",
      "Epoch: 7130/20000, Loss: 0.0000\n",
      "Epoch: 7140/20000, Loss: 0.0000\n",
      "Epoch: 7150/20000, Loss: 0.0000\n",
      "Epoch: 7160/20000, Loss: 0.0000\n",
      "Epoch: 7170/20000, Loss: 0.0000\n",
      "Epoch: 7180/20000, Loss: 0.0000\n",
      "Epoch: 7190/20000, Loss: 0.0000\n",
      "Epoch: 7200/20000, Loss: 0.0000\n",
      "Epoch: 7210/20000, Loss: 0.0000\n",
      "Epoch: 7220/20000, Loss: 0.0000\n",
      "Epoch: 7230/20000, Loss: 0.0000\n",
      "Epoch: 7240/20000, Loss: 0.0000\n",
      "Epoch: 7250/20000, Loss: 0.0000\n",
      "Epoch: 7260/20000, Loss: 0.0000\n",
      "Epoch: 7270/20000, Loss: 0.0000\n",
      "Epoch: 7280/20000, Loss: 0.0000\n",
      "Epoch: 7290/20000, Loss: 0.0001\n",
      "Epoch: 7300/20000, Loss: 0.0000\n",
      "Epoch: 7310/20000, Loss: 0.0000\n",
      "Epoch: 7320/20000, Loss: 0.0000\n",
      "Epoch: 7330/20000, Loss: 0.0000\n",
      "Epoch: 7340/20000, Loss: 0.0000\n",
      "Epoch: 7350/20000, Loss: 0.0000\n",
      "Epoch: 7360/20000, Loss: 0.0000\n",
      "Epoch: 7370/20000, Loss: 0.0000\n",
      "Epoch: 7380/20000, Loss: 0.0000\n",
      "Epoch: 7390/20000, Loss: 0.0000\n",
      "Epoch: 7400/20000, Loss: 0.0000\n",
      "Epoch: 7410/20000, Loss: 0.0000\n",
      "Epoch: 7420/20000, Loss: 0.0000\n",
      "Epoch: 7430/20000, Loss: 0.0000\n",
      "Epoch: 7440/20000, Loss: 0.0000\n",
      "Epoch: 7450/20000, Loss: 0.0000\n",
      "Epoch: 7460/20000, Loss: 0.0001\n",
      "Epoch: 7470/20000, Loss: 0.0000\n",
      "Epoch: 7480/20000, Loss: 0.0000\n",
      "Epoch: 7490/20000, Loss: 0.0000\n",
      "Epoch: 7500/20000, Loss: 0.0000\n",
      "Epoch: 7510/20000, Loss: 0.0000\n",
      "Epoch: 7520/20000, Loss: 0.0000\n",
      "Epoch: 7530/20000, Loss: 0.0000\n",
      "Epoch: 7540/20000, Loss: 0.0000\n",
      "Epoch: 7550/20000, Loss: 0.0000\n",
      "Epoch: 7560/20000, Loss: 0.0000\n",
      "Epoch: 7570/20000, Loss: 0.0000\n",
      "Epoch: 7580/20000, Loss: 0.0000\n",
      "Epoch: 7590/20000, Loss: 0.0000\n",
      "Epoch: 7600/20000, Loss: 0.0000\n",
      "Epoch: 7610/20000, Loss: 0.0000\n",
      "Epoch: 7620/20000, Loss: 0.0000\n",
      "Epoch: 7630/20000, Loss: 0.0000\n",
      "Epoch: 7640/20000, Loss: 0.0000\n",
      "Epoch: 7650/20000, Loss: 0.0000\n",
      "Epoch: 7660/20000, Loss: 0.0000\n",
      "Epoch: 7670/20000, Loss: 0.0000\n",
      "Epoch: 7680/20000, Loss: 0.0000\n",
      "Epoch: 7690/20000, Loss: 0.0000\n",
      "Epoch: 7700/20000, Loss: 0.0001\n",
      "Epoch: 7710/20000, Loss: 0.0000\n",
      "Epoch: 7720/20000, Loss: 0.0000\n",
      "Epoch: 7730/20000, Loss: 0.0000\n",
      "Epoch: 7740/20000, Loss: 0.0000\n",
      "Epoch: 7750/20000, Loss: 0.0000\n",
      "Epoch: 7760/20000, Loss: 0.0000\n",
      "Epoch: 7770/20000, Loss: 0.0000\n",
      "Epoch: 7780/20000, Loss: 0.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 7790/20000, Loss: 0.0000\n",
      "Epoch: 7800/20000, Loss: 0.0000\n",
      "Epoch: 7810/20000, Loss: 0.0000\n",
      "Epoch: 7820/20000, Loss: 0.0000\n",
      "Epoch: 7830/20000, Loss: 0.0000\n",
      "Epoch: 7840/20000, Loss: 0.0001\n",
      "Epoch: 7850/20000, Loss: 0.0000\n",
      "Epoch: 7860/20000, Loss: 0.0000\n",
      "Epoch: 7870/20000, Loss: 0.0000\n",
      "Epoch: 7880/20000, Loss: 0.0000\n",
      "Epoch: 7890/20000, Loss: 0.0000\n",
      "Epoch: 7900/20000, Loss: 0.0000\n",
      "Epoch: 7910/20000, Loss: 0.0000\n",
      "Epoch: 7920/20000, Loss: 0.0000\n",
      "Epoch: 7930/20000, Loss: 0.0000\n",
      "Epoch: 7940/20000, Loss: 0.0000\n",
      "Epoch: 7950/20000, Loss: 0.0000\n",
      "Epoch: 7960/20000, Loss: 0.0000\n",
      "Epoch: 7970/20000, Loss: 0.0000\n",
      "Epoch: 7980/20000, Loss: 0.0000\n",
      "Epoch: 7990/20000, Loss: 0.0000\n",
      "Epoch: 8000/20000, Loss: 0.0000\n",
      "Epoch: 8010/20000, Loss: 0.0000\n",
      "Epoch: 8020/20000, Loss: 0.0000\n",
      "Epoch: 8030/20000, Loss: 0.0000\n",
      "Epoch: 8040/20000, Loss: 0.0000\n",
      "Epoch: 8050/20000, Loss: 0.0001\n",
      "Epoch: 8060/20000, Loss: 0.0000\n",
      "Epoch: 8070/20000, Loss: 0.0000\n",
      "Epoch: 8080/20000, Loss: 0.0000\n",
      "Epoch: 8090/20000, Loss: 0.0000\n",
      "Epoch: 8100/20000, Loss: 0.0000\n",
      "Epoch: 8110/20000, Loss: 0.0000\n",
      "Epoch: 8120/20000, Loss: 0.0000\n",
      "Epoch: 8130/20000, Loss: 0.0000\n",
      "Epoch: 8140/20000, Loss: 0.0000\n",
      "Epoch: 8150/20000, Loss: 0.0000\n",
      "Epoch: 8160/20000, Loss: 0.0000\n",
      "Epoch: 8170/20000, Loss: 0.0001\n",
      "Epoch: 8180/20000, Loss: 0.0000\n",
      "Epoch: 8190/20000, Loss: 0.0000\n",
      "Epoch: 8200/20000, Loss: 0.0000\n",
      "Epoch: 8210/20000, Loss: 0.0000\n",
      "Epoch: 8220/20000, Loss: 0.0000\n",
      "Epoch: 8230/20000, Loss: 0.0000\n",
      "Epoch: 8240/20000, Loss: 0.0000\n",
      "Epoch: 8250/20000, Loss: 0.0000\n",
      "Epoch: 8260/20000, Loss: 0.0000\n",
      "Epoch: 8270/20000, Loss: 0.0000\n",
      "Epoch: 8280/20000, Loss: 0.0000\n",
      "Epoch: 8290/20000, Loss: 0.0000\n",
      "Epoch: 8300/20000, Loss: 0.0000\n",
      "Epoch: 8310/20000, Loss: 0.0001\n",
      "Epoch: 8320/20000, Loss: 0.0000\n",
      "Epoch: 8330/20000, Loss: 0.0000\n",
      "Epoch: 8340/20000, Loss: 0.0000\n",
      "Epoch: 8350/20000, Loss: 0.0000\n",
      "Epoch: 8360/20000, Loss: 0.0000\n",
      "Epoch: 8370/20000, Loss: 0.0000\n",
      "Epoch: 8380/20000, Loss: 0.0000\n",
      "Epoch: 8390/20000, Loss: 0.0000\n",
      "Epoch: 8400/20000, Loss: 0.0000\n",
      "Epoch: 8410/20000, Loss: 0.0000\n",
      "Epoch: 8420/20000, Loss: 0.0000\n",
      "Epoch: 8430/20000, Loss: 0.0000\n",
      "Epoch: 8440/20000, Loss: 0.0000\n",
      "Epoch: 8450/20000, Loss: 0.0000\n",
      "Epoch: 8460/20000, Loss: 0.0000\n",
      "Epoch: 8470/20000, Loss: 0.0000\n",
      "Epoch: 8480/20000, Loss: 0.0000\n",
      "Epoch: 8490/20000, Loss: 0.0000\n",
      "Epoch: 8500/20000, Loss: 0.0000\n",
      "Epoch: 8510/20000, Loss: 0.0000\n",
      "Epoch: 8520/20000, Loss: 0.0000\n",
      "Epoch: 8530/20000, Loss: 0.0000\n",
      "Epoch: 8540/20000, Loss: 0.0000\n",
      "Epoch: 8550/20000, Loss: 0.0000\n",
      "Epoch: 8560/20000, Loss: 0.0000\n",
      "Epoch: 8570/20000, Loss: 0.0000\n",
      "Epoch: 8580/20000, Loss: 0.0000\n",
      "Epoch: 8590/20000, Loss: 0.0000\n",
      "Epoch: 8600/20000, Loss: 0.0000\n",
      "Epoch: 8610/20000, Loss: 0.0000\n",
      "Epoch: 8620/20000, Loss: 0.0000\n",
      "Epoch: 8630/20000, Loss: 0.0000\n",
      "Epoch: 8640/20000, Loss: 0.0000\n",
      "Epoch: 8650/20000, Loss: 0.0000\n",
      "Epoch: 8660/20000, Loss: 0.0000\n",
      "Epoch: 8670/20000, Loss: 0.0000\n",
      "Epoch: 8680/20000, Loss: 0.0001\n",
      "Epoch: 8690/20000, Loss: 0.0000\n",
      "Epoch: 8700/20000, Loss: 0.0000\n",
      "Epoch: 8710/20000, Loss: 0.0000\n",
      "Epoch: 8720/20000, Loss: 0.0000\n",
      "Epoch: 8730/20000, Loss: 0.0000\n",
      "Epoch: 8740/20000, Loss: 0.0000\n",
      "Epoch: 8750/20000, Loss: 0.0000\n",
      "Epoch: 8760/20000, Loss: 0.0000\n",
      "Epoch: 8770/20000, Loss: 0.0000\n",
      "Epoch: 8780/20000, Loss: 0.0000\n",
      "Epoch: 8790/20000, Loss: 0.0000\n",
      "Epoch: 8800/20000, Loss: 0.0000\n",
      "Epoch: 8810/20000, Loss: 0.0000\n",
      "Epoch: 8820/20000, Loss: 0.0000\n",
      "Epoch: 8830/20000, Loss: 0.0000\n",
      "Epoch: 8840/20000, Loss: 0.0000\n",
      "Epoch: 8850/20000, Loss: 0.0000\n",
      "Epoch: 8860/20000, Loss: 0.0000\n",
      "Epoch: 8870/20000, Loss: 0.0000\n",
      "Epoch: 8880/20000, Loss: 0.0000\n",
      "Epoch: 8890/20000, Loss: 0.0000\n",
      "Epoch: 8900/20000, Loss: 0.0000\n",
      "Epoch: 8910/20000, Loss: 0.0002\n",
      "Epoch: 8920/20000, Loss: 0.0000\n",
      "Epoch: 8930/20000, Loss: 0.0000\n",
      "Epoch: 8940/20000, Loss: 0.0000\n",
      "Epoch: 8950/20000, Loss: 0.0000\n",
      "Epoch: 8960/20000, Loss: 0.0000\n",
      "Epoch: 8970/20000, Loss: 0.0000\n",
      "Epoch: 8980/20000, Loss: 0.0000\n",
      "Epoch: 8990/20000, Loss: 0.0000\n",
      "Epoch: 9000/20000, Loss: 0.0000\n",
      "Epoch: 9010/20000, Loss: 0.0000\n",
      "Epoch: 9020/20000, Loss: 0.0000\n",
      "Epoch: 9030/20000, Loss: 0.0000\n",
      "Epoch: 9040/20000, Loss: 0.0000\n",
      "Epoch: 9050/20000, Loss: 0.0000\n",
      "Epoch: 9060/20000, Loss: 0.0000\n",
      "Epoch: 9070/20000, Loss: 0.0000\n",
      "Epoch: 9080/20000, Loss: 0.0002\n",
      "Epoch: 9090/20000, Loss: 0.0000\n",
      "Epoch: 9100/20000, Loss: 0.0000\n",
      "Epoch: 9110/20000, Loss: 0.0000\n",
      "Epoch: 9120/20000, Loss: 0.0000\n",
      "Epoch: 9130/20000, Loss: 0.0000\n",
      "Epoch: 9140/20000, Loss: 0.0000\n",
      "Epoch: 9150/20000, Loss: 0.0000\n",
      "Epoch: 9160/20000, Loss: 0.0000\n",
      "Epoch: 9170/20000, Loss: 0.0000\n",
      "Epoch: 9180/20000, Loss: 0.0000\n",
      "Epoch: 9190/20000, Loss: 0.0000\n",
      "Epoch: 9200/20000, Loss: 0.0000\n",
      "Epoch: 9210/20000, Loss: 0.0000\n",
      "Epoch: 9220/20000, Loss: 0.0000\n",
      "Epoch: 9230/20000, Loss: 0.0000\n",
      "Epoch: 9240/20000, Loss: 0.0000\n",
      "Epoch: 9250/20000, Loss: 0.0000\n",
      "Epoch: 9260/20000, Loss: 0.0000\n",
      "Epoch: 9270/20000, Loss: 0.0000\n",
      "Epoch: 9280/20000, Loss: 0.0000\n",
      "Epoch: 9290/20000, Loss: 0.0000\n",
      "Epoch: 9300/20000, Loss: 0.0000\n",
      "Epoch: 9310/20000, Loss: 0.0000\n",
      "Epoch: 9320/20000, Loss: 0.0003\n",
      "Epoch: 9330/20000, Loss: 0.0001\n",
      "Epoch: 9340/20000, Loss: 0.0000\n",
      "Epoch: 9350/20000, Loss: 0.0000\n",
      "Epoch: 9360/20000, Loss: 0.0000\n",
      "Epoch: 9370/20000, Loss: 0.0000\n",
      "Epoch: 9380/20000, Loss: 0.0000\n",
      "Epoch: 9390/20000, Loss: 0.0000\n",
      "Epoch: 9400/20000, Loss: 0.0000\n",
      "Epoch: 9410/20000, Loss: 0.0000\n",
      "Epoch: 9420/20000, Loss: 0.0000\n",
      "Epoch: 9430/20000, Loss: 0.0000\n",
      "Epoch: 9440/20000, Loss: 0.0000\n",
      "Epoch: 9450/20000, Loss: 0.0000\n",
      "Epoch: 9460/20000, Loss: 0.0000\n",
      "Epoch: 9470/20000, Loss: 0.0000\n",
      "Epoch: 9480/20000, Loss: 0.0000\n",
      "Epoch: 9490/20000, Loss: 0.0000\n",
      "Epoch: 9500/20000, Loss: 0.0000\n",
      "Epoch: 9510/20000, Loss: 0.0000\n",
      "Epoch: 9520/20000, Loss: 0.0000\n",
      "Epoch: 9530/20000, Loss: 0.0001\n",
      "Epoch: 9540/20000, Loss: 0.0000\n",
      "Epoch: 9550/20000, Loss: 0.0000\n",
      "Epoch: 9560/20000, Loss: 0.0000\n",
      "Epoch: 9570/20000, Loss: 0.0000\n",
      "Epoch: 9580/20000, Loss: 0.0000\n",
      "Epoch: 9590/20000, Loss: 0.0000\n",
      "Epoch: 9600/20000, Loss: 0.0000\n",
      "Epoch: 9610/20000, Loss: 0.0000\n",
      "Epoch: 9620/20000, Loss: 0.0000\n",
      "Epoch: 9630/20000, Loss: 0.0000\n",
      "Epoch: 9640/20000, Loss: 0.0000\n",
      "Epoch: 9650/20000, Loss: 0.0000\n",
      "Epoch: 9660/20000, Loss: 0.0000\n",
      "Epoch: 9670/20000, Loss: 0.0000\n",
      "Epoch: 9680/20000, Loss: 0.0000\n",
      "Epoch: 9690/20000, Loss: 0.0000\n",
      "Epoch: 9700/20000, Loss: 0.0000\n",
      "Epoch: 9710/20000, Loss: 0.0000\n",
      "Epoch: 9720/20000, Loss: 0.0000\n",
      "Epoch: 9730/20000, Loss: 0.0000\n",
      "Epoch: 9740/20000, Loss: 0.0000\n",
      "Epoch: 9750/20000, Loss: 0.0000\n",
      "Epoch: 9760/20000, Loss: 0.0000\n",
      "Epoch: 9770/20000, Loss: 0.0000\n",
      "Epoch: 9780/20000, Loss: 0.0000\n",
      "Epoch: 9790/20000, Loss: 0.0000\n",
      "Epoch: 9800/20000, Loss: 0.0000\n",
      "Epoch: 9810/20000, Loss: 0.0000\n",
      "Epoch: 9820/20000, Loss: 0.0000\n",
      "Epoch: 9830/20000, Loss: 0.0000\n",
      "Epoch: 9840/20000, Loss: 0.0000\n",
      "Epoch: 9850/20000, Loss: 0.0000\n",
      "Epoch: 9860/20000, Loss: 0.0001\n",
      "Epoch: 9870/20000, Loss: 0.0000\n",
      "Epoch: 9880/20000, Loss: 0.0000\n",
      "Epoch: 9890/20000, Loss: 0.0000\n",
      "Epoch: 9900/20000, Loss: 0.0000\n",
      "Epoch: 9910/20000, Loss: 0.0000\n",
      "Epoch: 9920/20000, Loss: 0.0000\n",
      "Epoch: 9930/20000, Loss: 0.0000\n",
      "Epoch: 9940/20000, Loss: 0.0000\n",
      "Epoch: 9950/20000, Loss: 0.0000\n",
      "Epoch: 9960/20000, Loss: 0.0000\n",
      "Epoch: 9970/20000, Loss: 0.0000\n",
      "Epoch: 9980/20000, Loss: 0.0000\n",
      "Epoch: 9990/20000, Loss: 0.0000\n",
      "Epoch: 10000/20000, Loss: 0.0000\n",
      "Epoch: 10010/20000, Loss: 0.0000\n",
      "Epoch: 10020/20000, Loss: 0.0000\n",
      "Epoch: 10030/20000, Loss: 0.0000\n",
      "Epoch: 10040/20000, Loss: 0.0000\n",
      "Epoch: 10050/20000, Loss: 0.0000\n",
      "Epoch: 10060/20000, Loss: 0.0000\n",
      "Epoch: 10070/20000, Loss: 0.0000\n",
      "Epoch: 10080/20000, Loss: 0.0000\n",
      "Epoch: 10090/20000, Loss: 0.0002\n",
      "Epoch: 10100/20000, Loss: 0.0000\n",
      "Epoch: 10110/20000, Loss: 0.0000\n",
      "Epoch: 10120/20000, Loss: 0.0000\n",
      "Epoch: 10130/20000, Loss: 0.0000\n",
      "Epoch: 10140/20000, Loss: 0.0000\n",
      "Epoch: 10150/20000, Loss: 0.0000\n",
      "Epoch: 10160/20000, Loss: 0.0000\n",
      "Epoch: 10170/20000, Loss: 0.0000\n",
      "Epoch: 10180/20000, Loss: 0.0000\n",
      "Epoch: 10190/20000, Loss: 0.0000\n",
      "Epoch: 10200/20000, Loss: 0.0000\n",
      "Epoch: 10210/20000, Loss: 0.0000\n",
      "Epoch: 10220/20000, Loss: 0.0000\n",
      "Epoch: 10230/20000, Loss: 0.0000\n",
      "Epoch: 10240/20000, Loss: 0.0000\n",
      "Epoch: 10250/20000, Loss: 0.0000\n",
      "Epoch: 10260/20000, Loss: 0.0000\n",
      "Epoch: 10270/20000, Loss: 0.0000\n",
      "Epoch: 10280/20000, Loss: 0.0000\n",
      "Epoch: 10290/20000, Loss: 0.0000\n",
      "Epoch: 10300/20000, Loss: 0.0000\n",
      "Epoch: 10310/20000, Loss: 0.0001\n",
      "Epoch: 10320/20000, Loss: 0.0000\n",
      "Epoch: 10330/20000, Loss: 0.0000\n",
      "Epoch: 10340/20000, Loss: 0.0000\n",
      "Epoch: 10350/20000, Loss: 0.0000\n",
      "Epoch: 10360/20000, Loss: 0.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 10370/20000, Loss: 0.0000\n",
      "Epoch: 10380/20000, Loss: 0.0000\n",
      "Epoch: 10390/20000, Loss: 0.0000\n",
      "Epoch: 10400/20000, Loss: 0.0001\n",
      "Epoch: 10410/20000, Loss: 0.0000\n",
      "Epoch: 10420/20000, Loss: 0.0000\n",
      "Epoch: 10430/20000, Loss: 0.0000\n",
      "Epoch: 10440/20000, Loss: 0.0000\n",
      "Epoch: 10450/20000, Loss: 0.0000\n",
      "Epoch: 10460/20000, Loss: 0.0000\n",
      "Epoch: 10470/20000, Loss: 0.0000\n",
      "Epoch: 10480/20000, Loss: 0.0000\n",
      "Epoch: 10490/20000, Loss: 0.0000\n",
      "Epoch: 10500/20000, Loss: 0.0000\n",
      "Epoch: 10510/20000, Loss: 0.0000\n",
      "Epoch: 10520/20000, Loss: 0.0000\n",
      "Epoch: 10530/20000, Loss: 0.0000\n",
      "Epoch: 10540/20000, Loss: 0.0000\n",
      "Epoch: 10550/20000, Loss: 0.0000\n",
      "Epoch: 10560/20000, Loss: 0.0000\n",
      "Epoch: 10570/20000, Loss: 0.0000\n",
      "Epoch: 10580/20000, Loss: 0.0000\n",
      "Epoch: 10590/20000, Loss: 0.0000\n",
      "Epoch: 10600/20000, Loss: 0.0000\n",
      "Epoch: 10610/20000, Loss: 0.0000\n",
      "Epoch: 10620/20000, Loss: 0.0000\n",
      "Epoch: 10630/20000, Loss: 0.0000\n",
      "Epoch: 10640/20000, Loss: 0.0000\n",
      "Epoch: 10650/20000, Loss: 0.0000\n",
      "Epoch: 10660/20000, Loss: 0.0000\n",
      "Epoch: 10670/20000, Loss: 0.0000\n",
      "Epoch: 10680/20000, Loss: 0.0000\n",
      "Epoch: 10690/20000, Loss: 0.0000\n",
      "Epoch: 10700/20000, Loss: 0.0000\n",
      "Epoch: 10710/20000, Loss: 0.0000\n",
      "Epoch: 10720/20000, Loss: 0.0000\n",
      "Epoch: 10730/20000, Loss: 0.0000\n",
      "Epoch: 10740/20000, Loss: 0.0000\n",
      "Epoch: 10750/20000, Loss: 0.0000\n",
      "Epoch: 10760/20000, Loss: 0.0000\n",
      "Epoch: 10770/20000, Loss: 0.0000\n",
      "Epoch: 10780/20000, Loss: 0.0000\n",
      "Epoch: 10790/20000, Loss: 0.0000\n",
      "Epoch: 10800/20000, Loss: 0.0000\n",
      "Epoch: 10810/20000, Loss: 0.0000\n",
      "Epoch: 10820/20000, Loss: 0.0000\n",
      "Epoch: 10830/20000, Loss: 0.0000\n",
      "Epoch: 10840/20000, Loss: 0.0000\n",
      "Epoch: 10850/20000, Loss: 0.0000\n",
      "Epoch: 10860/20000, Loss: 0.0000\n",
      "Epoch: 10870/20000, Loss: 0.0000\n",
      "Epoch: 10880/20000, Loss: 0.0000\n",
      "Epoch: 10890/20000, Loss: 0.0000\n",
      "Epoch: 10900/20000, Loss: 0.0000\n",
      "Epoch: 10910/20000, Loss: 0.0000\n",
      "Epoch: 10920/20000, Loss: 0.0000\n",
      "Epoch: 10930/20000, Loss: 0.0000\n",
      "Epoch: 10940/20000, Loss: 0.0000\n",
      "Epoch: 10950/20000, Loss: 0.0000\n",
      "Epoch: 10960/20000, Loss: 0.0000\n",
      "Epoch: 10970/20000, Loss: 0.0000\n",
      "Epoch: 10980/20000, Loss: 0.0000\n",
      "Epoch: 10990/20000, Loss: 0.0000\n",
      "Epoch: 11000/20000, Loss: 0.0000\n",
      "Epoch: 11010/20000, Loss: 0.0000\n",
      "Epoch: 11020/20000, Loss: 0.0000\n",
      "Epoch: 11030/20000, Loss: 0.0000\n",
      "Epoch: 11040/20000, Loss: 0.0000\n",
      "Epoch: 11050/20000, Loss: 0.0000\n",
      "Epoch: 11060/20000, Loss: 0.0000\n",
      "Epoch: 11070/20000, Loss: 0.0000\n",
      "Epoch: 11080/20000, Loss: 0.0000\n",
      "Epoch: 11090/20000, Loss: 0.0000\n",
      "Epoch: 11100/20000, Loss: 0.0000\n",
      "Epoch: 11110/20000, Loss: 0.0000\n",
      "Epoch: 11120/20000, Loss: 0.0001\n",
      "Epoch: 11130/20000, Loss: 0.0001\n",
      "Epoch: 11140/20000, Loss: 0.0000\n",
      "Epoch: 11150/20000, Loss: 0.0000\n",
      "Epoch: 11160/20000, Loss: 0.0000\n",
      "Epoch: 11170/20000, Loss: 0.0000\n",
      "Epoch: 11180/20000, Loss: 0.0000\n",
      "Epoch: 11190/20000, Loss: 0.0000\n",
      "Epoch: 11200/20000, Loss: 0.0000\n",
      "Epoch: 11210/20000, Loss: 0.0000\n",
      "Epoch: 11220/20000, Loss: 0.0000\n",
      "Epoch: 11230/20000, Loss: 0.0000\n",
      "Epoch: 11240/20000, Loss: 0.0000\n",
      "Epoch: 11250/20000, Loss: 0.0000\n",
      "Epoch: 11260/20000, Loss: 0.0000\n",
      "Epoch: 11270/20000, Loss: 0.0000\n",
      "Epoch: 11280/20000, Loss: 0.0000\n",
      "Epoch: 11290/20000, Loss: 0.0001\n",
      "Epoch: 11300/20000, Loss: 0.0000\n",
      "Epoch: 11310/20000, Loss: 0.0000\n",
      "Epoch: 11320/20000, Loss: 0.0000\n",
      "Epoch: 11330/20000, Loss: 0.0000\n",
      "Epoch: 11340/20000, Loss: 0.0000\n",
      "Epoch: 11350/20000, Loss: 0.0000\n",
      "Epoch: 11360/20000, Loss: 0.0000\n",
      "Epoch: 11370/20000, Loss: 0.0000\n",
      "Epoch: 11380/20000, Loss: 0.0000\n",
      "Epoch: 11390/20000, Loss: 0.0000\n",
      "Epoch: 11400/20000, Loss: 0.0000\n",
      "Epoch: 11410/20000, Loss: 0.0000\n",
      "Epoch: 11420/20000, Loss: 0.0000\n",
      "Epoch: 11430/20000, Loss: 0.0000\n",
      "Epoch: 11440/20000, Loss: 0.0001\n",
      "Epoch: 11450/20000, Loss: 0.0000\n",
      "Epoch: 11460/20000, Loss: 0.0000\n",
      "Epoch: 11470/20000, Loss: 0.0000\n",
      "Epoch: 11480/20000, Loss: 0.0000\n",
      "Epoch: 11490/20000, Loss: 0.0000\n",
      "Epoch: 11500/20000, Loss: 0.0000\n",
      "Epoch: 11510/20000, Loss: 0.0000\n",
      "Epoch: 11520/20000, Loss: 0.0000\n",
      "Epoch: 11530/20000, Loss: 0.0000\n",
      "Epoch: 11540/20000, Loss: 0.0000\n",
      "Epoch: 11550/20000, Loss: 0.0000\n",
      "Epoch: 11560/20000, Loss: 0.0000\n",
      "Epoch: 11570/20000, Loss: 0.0000\n",
      "Epoch: 11580/20000, Loss: 0.0002\n",
      "Epoch: 11590/20000, Loss: 0.0000\n",
      "Epoch: 11600/20000, Loss: 0.0000\n",
      "Epoch: 11610/20000, Loss: 0.0000\n",
      "Epoch: 11620/20000, Loss: 0.0000\n",
      "Epoch: 11630/20000, Loss: 0.0000\n",
      "Epoch: 11640/20000, Loss: 0.0000\n",
      "Epoch: 11650/20000, Loss: 0.0000\n",
      "Epoch: 11660/20000, Loss: 0.0000\n",
      "Epoch: 11670/20000, Loss: 0.0000\n",
      "Epoch: 11680/20000, Loss: 0.0000\n",
      "Epoch: 11690/20000, Loss: 0.0000\n",
      "Epoch: 11700/20000, Loss: 0.0000\n",
      "Epoch: 11710/20000, Loss: 0.0000\n",
      "Epoch: 11720/20000, Loss: 0.0000\n",
      "Epoch: 11730/20000, Loss: 0.0000\n",
      "Epoch: 11740/20000, Loss: 0.0000\n",
      "Epoch: 11750/20000, Loss: 0.0000\n",
      "Epoch: 11760/20000, Loss: 0.0000\n",
      "Epoch: 11770/20000, Loss: 0.0001\n",
      "Epoch: 11780/20000, Loss: 0.0001\n",
      "Epoch: 11790/20000, Loss: 0.0000\n",
      "Epoch: 11800/20000, Loss: 0.0000\n",
      "Epoch: 11810/20000, Loss: 0.0000\n",
      "Epoch: 11820/20000, Loss: 0.0000\n",
      "Epoch: 11830/20000, Loss: 0.0000\n",
      "Epoch: 11840/20000, Loss: 0.0000\n",
      "Epoch: 11850/20000, Loss: 0.0000\n",
      "Epoch: 11860/20000, Loss: 0.0000\n",
      "Epoch: 11870/20000, Loss: 0.0000\n",
      "Epoch: 11880/20000, Loss: 0.0000\n",
      "Epoch: 11890/20000, Loss: 0.0000\n",
      "Epoch: 11900/20000, Loss: 0.0000\n",
      "Epoch: 11910/20000, Loss: 0.0000\n",
      "Epoch: 11920/20000, Loss: 0.0000\n",
      "Epoch: 11930/20000, Loss: 0.0000\n",
      "Epoch: 11940/20000, Loss: 0.0000\n",
      "Epoch: 11950/20000, Loss: 0.0001\n",
      "Epoch: 11960/20000, Loss: 0.0000\n",
      "Epoch: 11970/20000, Loss: 0.0000\n",
      "Epoch: 11980/20000, Loss: 0.0000\n",
      "Epoch: 11990/20000, Loss: 0.0000\n",
      "Epoch: 12000/20000, Loss: 0.0000\n",
      "Epoch: 12010/20000, Loss: 0.0000\n",
      "Epoch: 12020/20000, Loss: 0.0000\n",
      "Epoch: 12030/20000, Loss: 0.0000\n",
      "Epoch: 12040/20000, Loss: 0.0000\n",
      "Epoch: 12050/20000, Loss: 0.0000\n",
      "Epoch: 12060/20000, Loss: 0.0001\n",
      "Epoch: 12070/20000, Loss: 0.0000\n",
      "Epoch: 12080/20000, Loss: 0.0000\n",
      "Epoch: 12090/20000, Loss: 0.0000\n",
      "Epoch: 12100/20000, Loss: 0.0000\n",
      "Epoch: 12110/20000, Loss: 0.0000\n",
      "Epoch: 12120/20000, Loss: 0.0000\n",
      "Epoch: 12130/20000, Loss: 0.0000\n",
      "Epoch: 12140/20000, Loss: 0.0000\n",
      "Epoch: 12150/20000, Loss: 0.0000\n",
      "Epoch: 12160/20000, Loss: 0.0000\n",
      "Epoch: 12170/20000, Loss: 0.0000\n",
      "Epoch: 12180/20000, Loss: 0.0000\n",
      "Epoch: 12190/20000, Loss: 0.0000\n",
      "Epoch: 12200/20000, Loss: 0.0000\n",
      "Epoch: 12210/20000, Loss: 0.0000\n",
      "Epoch: 12220/20000, Loss: 0.0000\n",
      "Epoch: 12230/20000, Loss: 0.0000\n",
      "Epoch: 12240/20000, Loss: 0.0000\n",
      "Epoch: 12250/20000, Loss: 0.0000\n",
      "Epoch: 12260/20000, Loss: 0.0000\n",
      "Epoch: 12270/20000, Loss: 0.0000\n",
      "Epoch: 12280/20000, Loss: 0.0000\n",
      "Epoch: 12290/20000, Loss: 0.0000\n",
      "Epoch: 12300/20000, Loss: 0.0000\n",
      "Epoch: 12310/20000, Loss: 0.0000\n",
      "Epoch: 12320/20000, Loss: 0.0000\n",
      "Epoch: 12330/20000, Loss: 0.0000\n",
      "Epoch: 12340/20000, Loss: 0.0000\n",
      "Epoch: 12350/20000, Loss: 0.0000\n",
      "Epoch: 12360/20000, Loss: 0.0001\n",
      "Epoch: 12370/20000, Loss: 0.0001\n",
      "Epoch: 12380/20000, Loss: 0.0000\n",
      "Epoch: 12390/20000, Loss: 0.0000\n",
      "Epoch: 12400/20000, Loss: 0.0000\n",
      "Epoch: 12410/20000, Loss: 0.0000\n",
      "Epoch: 12420/20000, Loss: 0.0000\n",
      "Epoch: 12430/20000, Loss: 0.0000\n",
      "Epoch: 12440/20000, Loss: 0.0000\n",
      "Epoch: 12450/20000, Loss: 0.0000\n",
      "Epoch: 12460/20000, Loss: 0.0000\n",
      "Epoch: 12470/20000, Loss: 0.0000\n",
      "Epoch: 12480/20000, Loss: 0.0000\n",
      "Epoch: 12490/20000, Loss: 0.0000\n",
      "Epoch: 12500/20000, Loss: 0.0000\n",
      "Epoch: 12510/20000, Loss: 0.0000\n",
      "Epoch: 12520/20000, Loss: 0.0000\n",
      "Epoch: 12530/20000, Loss: 0.0000\n",
      "Epoch: 12540/20000, Loss: 0.0001\n",
      "Epoch: 12550/20000, Loss: 0.0000\n",
      "Epoch: 12560/20000, Loss: 0.0000\n",
      "Epoch: 12570/20000, Loss: 0.0000\n",
      "Epoch: 12580/20000, Loss: 0.0000\n",
      "Epoch: 12590/20000, Loss: 0.0000\n",
      "Epoch: 12600/20000, Loss: 0.0000\n",
      "Epoch: 12610/20000, Loss: 0.0000\n",
      "Epoch: 12620/20000, Loss: 0.0000\n",
      "Epoch: 12630/20000, Loss: 0.0000\n",
      "Epoch: 12640/20000, Loss: 0.0000\n",
      "Epoch: 12650/20000, Loss: 0.0000\n",
      "Epoch: 12660/20000, Loss: 0.0000\n",
      "Epoch: 12670/20000, Loss: 0.0001\n",
      "Epoch: 12680/20000, Loss: 0.0000\n",
      "Epoch: 12690/20000, Loss: 0.0000\n",
      "Epoch: 12700/20000, Loss: 0.0000\n",
      "Epoch: 12710/20000, Loss: 0.0000\n",
      "Epoch: 12720/20000, Loss: 0.0000\n",
      "Epoch: 12730/20000, Loss: 0.0000\n",
      "Epoch: 12740/20000, Loss: 0.0000\n",
      "Epoch: 12750/20000, Loss: 0.0000\n",
      "Epoch: 12760/20000, Loss: 0.0000\n",
      "Epoch: 12770/20000, Loss: 0.0000\n",
      "Epoch: 12780/20000, Loss: 0.0000\n",
      "Epoch: 12790/20000, Loss: 0.0000\n",
      "Epoch: 12800/20000, Loss: 0.0000\n",
      "Epoch: 12810/20000, Loss: 0.0000\n",
      "Epoch: 12820/20000, Loss: 0.0001\n",
      "Epoch: 12830/20000, Loss: 0.0000\n",
      "Epoch: 12840/20000, Loss: 0.0000\n",
      "Epoch: 12850/20000, Loss: 0.0000\n",
      "Epoch: 12860/20000, Loss: 0.0000\n",
      "Epoch: 12870/20000, Loss: 0.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 12880/20000, Loss: 0.0000\n",
      "Epoch: 12890/20000, Loss: 0.0000\n",
      "Epoch: 12900/20000, Loss: 0.0000\n",
      "Epoch: 12910/20000, Loss: 0.0000\n",
      "Epoch: 12920/20000, Loss: 0.0000\n",
      "Epoch: 12930/20000, Loss: 0.0000\n",
      "Epoch: 12940/20000, Loss: 0.0000\n",
      "Epoch: 12950/20000, Loss: 0.0000\n",
      "Epoch: 12960/20000, Loss: 0.0000\n",
      "Epoch: 12970/20000, Loss: 0.0000\n",
      "Epoch: 12980/20000, Loss: 0.0001\n",
      "Epoch: 12990/20000, Loss: 0.0000\n",
      "Epoch: 13000/20000, Loss: 0.0000\n",
      "Epoch: 13010/20000, Loss: 0.0000\n",
      "Epoch: 13020/20000, Loss: 0.0000\n",
      "Epoch: 13030/20000, Loss: 0.0000\n",
      "Epoch: 13040/20000, Loss: 0.0000\n",
      "Epoch: 13050/20000, Loss: 0.0000\n",
      "Epoch: 13060/20000, Loss: 0.0000\n",
      "Epoch: 13070/20000, Loss: 0.0000\n",
      "Epoch: 13080/20000, Loss: 0.0000\n",
      "Epoch: 13090/20000, Loss: 0.0000\n",
      "Epoch: 13100/20000, Loss: 0.0000\n",
      "Epoch: 13110/20000, Loss: 0.0000\n",
      "Epoch: 13120/20000, Loss: 0.0000\n",
      "Epoch: 13130/20000, Loss: 0.0000\n",
      "Epoch: 13140/20000, Loss: 0.0000\n",
      "Epoch: 13150/20000, Loss: 0.0000\n",
      "Epoch: 13160/20000, Loss: 0.0000\n",
      "Epoch: 13170/20000, Loss: 0.0000\n",
      "Epoch: 13180/20000, Loss: 0.0000\n",
      "Epoch: 13190/20000, Loss: 0.0000\n",
      "Epoch: 13200/20000, Loss: 0.0000\n",
      "Epoch: 13210/20000, Loss: 0.0000\n",
      "Epoch: 13220/20000, Loss: 0.0000\n",
      "Epoch: 13230/20000, Loss: 0.0000\n",
      "Epoch: 13240/20000, Loss: 0.0000\n",
      "Epoch: 13250/20000, Loss: 0.0000\n",
      "Epoch: 13260/20000, Loss: 0.0000\n",
      "Epoch: 13270/20000, Loss: 0.0000\n",
      "Epoch: 13280/20000, Loss: 0.0000\n",
      "Epoch: 13290/20000, Loss: 0.0001\n",
      "Epoch: 13300/20000, Loss: 0.0000\n",
      "Epoch: 13310/20000, Loss: 0.0000\n",
      "Epoch: 13320/20000, Loss: 0.0000\n",
      "Epoch: 13330/20000, Loss: 0.0000\n",
      "Epoch: 13340/20000, Loss: 0.0000\n",
      "Epoch: 13350/20000, Loss: 0.0000\n",
      "Epoch: 13360/20000, Loss: 0.0000\n",
      "Epoch: 13370/20000, Loss: 0.0000\n",
      "Epoch: 13380/20000, Loss: 0.0000\n",
      "Epoch: 13390/20000, Loss: 0.0000\n",
      "Epoch: 13400/20000, Loss: 0.0000\n",
      "Epoch: 13410/20000, Loss: 0.0000\n",
      "Epoch: 13420/20000, Loss: 0.0000\n",
      "Epoch: 13430/20000, Loss: 0.0000\n",
      "Epoch: 13440/20000, Loss: 0.0000\n",
      "Epoch: 13450/20000, Loss: 0.0001\n",
      "Epoch: 13460/20000, Loss: 0.0000\n",
      "Epoch: 13470/20000, Loss: 0.0000\n",
      "Epoch: 13480/20000, Loss: 0.0000\n",
      "Epoch: 13490/20000, Loss: 0.0000\n",
      "Epoch: 13500/20000, Loss: 0.0000\n",
      "Epoch: 13510/20000, Loss: 0.0000\n",
      "Epoch: 13520/20000, Loss: 0.0000\n",
      "Epoch: 13530/20000, Loss: 0.0000\n",
      "Epoch: 13540/20000, Loss: 0.0000\n",
      "Epoch: 13550/20000, Loss: 0.0000\n",
      "Epoch: 13560/20000, Loss: 0.0000\n",
      "Epoch: 13570/20000, Loss: 0.0000\n",
      "Epoch: 13580/20000, Loss: 0.0000\n",
      "Epoch: 13590/20000, Loss: 0.0000\n",
      "Epoch: 13600/20000, Loss: 0.0000\n",
      "Epoch: 13610/20000, Loss: 0.0000\n",
      "Epoch: 13620/20000, Loss: 0.0001\n",
      "Epoch: 13630/20000, Loss: 0.0001\n",
      "Epoch: 13640/20000, Loss: 0.0000\n",
      "Epoch: 13650/20000, Loss: 0.0000\n",
      "Epoch: 13660/20000, Loss: 0.0000\n",
      "Epoch: 13670/20000, Loss: 0.0000\n",
      "Epoch: 13680/20000, Loss: 0.0000\n",
      "Epoch: 13690/20000, Loss: 0.0000\n",
      "Epoch: 13700/20000, Loss: 0.0000\n",
      "Epoch: 13710/20000, Loss: 0.0000\n",
      "Epoch: 13720/20000, Loss: 0.0000\n",
      "Epoch: 13730/20000, Loss: 0.0000\n",
      "Epoch: 13740/20000, Loss: 0.0000\n",
      "Epoch: 13750/20000, Loss: 0.0000\n",
      "Epoch: 13760/20000, Loss: 0.0000\n",
      "Epoch: 13770/20000, Loss: 0.0000\n",
      "Epoch: 13780/20000, Loss: 0.0000\n",
      "Epoch: 13790/20000, Loss: 0.0000\n",
      "Epoch: 13800/20000, Loss: 0.0000\n",
      "Epoch: 13810/20000, Loss: 0.0000\n",
      "Epoch: 13820/20000, Loss: 0.0000\n",
      "Epoch: 13830/20000, Loss: 0.0000\n",
      "Epoch: 13840/20000, Loss: 0.0000\n",
      "Epoch: 13850/20000, Loss: 0.0000\n",
      "Epoch: 13860/20000, Loss: 0.0000\n",
      "Epoch: 13870/20000, Loss: 0.0000\n",
      "Epoch: 13880/20000, Loss: 0.0000\n",
      "Epoch: 13890/20000, Loss: 0.0000\n",
      "Epoch: 13900/20000, Loss: 0.0000\n",
      "Epoch: 13910/20000, Loss: 0.0000\n",
      "Epoch: 13920/20000, Loss: 0.0000\n",
      "Epoch: 13930/20000, Loss: 0.0000\n",
      "Epoch: 13940/20000, Loss: 0.0000\n",
      "Epoch: 13950/20000, Loss: 0.0000\n",
      "Epoch: 13960/20000, Loss: 0.0000\n",
      "Epoch: 13970/20000, Loss: 0.0000\n",
      "Epoch: 13980/20000, Loss: 0.0000\n",
      "Epoch: 13990/20000, Loss: 0.0000\n",
      "Epoch: 14000/20000, Loss: 0.0000\n",
      "Epoch: 14010/20000, Loss: 0.0000\n",
      "Epoch: 14020/20000, Loss: 0.0000\n",
      "Epoch: 14030/20000, Loss: 0.0000\n",
      "Epoch: 14040/20000, Loss: 0.0000\n",
      "Epoch: 14050/20000, Loss: 0.0000\n",
      "Epoch: 14060/20000, Loss: 0.0000\n",
      "Epoch: 14070/20000, Loss: 0.0000\n",
      "Epoch: 14080/20000, Loss: 0.0000\n",
      "Epoch: 14090/20000, Loss: 0.0000\n",
      "Epoch: 14100/20000, Loss: 0.0000\n",
      "Epoch: 14110/20000, Loss: 0.0000\n",
      "Epoch: 14120/20000, Loss: 0.0000\n",
      "Epoch: 14130/20000, Loss: 0.0000\n",
      "Epoch: 14140/20000, Loss: 0.0000\n",
      "Epoch: 14150/20000, Loss: 0.0000\n",
      "Epoch: 14160/20000, Loss: 0.0000\n",
      "Epoch: 14170/20000, Loss: 0.0000\n",
      "Epoch: 14180/20000, Loss: 0.0000\n",
      "Epoch: 14190/20000, Loss: 0.0001\n",
      "Epoch: 14200/20000, Loss: 0.0000\n",
      "Epoch: 14210/20000, Loss: 0.0000\n",
      "Epoch: 14220/20000, Loss: 0.0000\n",
      "Epoch: 14230/20000, Loss: 0.0000\n",
      "Epoch: 14240/20000, Loss: 0.0000\n",
      "Epoch: 14250/20000, Loss: 0.0000\n",
      "Epoch: 14260/20000, Loss: 0.0000\n",
      "Epoch: 14270/20000, Loss: 0.0000\n",
      "Epoch: 14280/20000, Loss: 0.0000\n",
      "Epoch: 14290/20000, Loss: 0.0000\n",
      "Epoch: 14300/20000, Loss: 0.0000\n",
      "Epoch: 14310/20000, Loss: 0.0000\n",
      "Epoch: 14320/20000, Loss: 0.0000\n",
      "Epoch: 14330/20000, Loss: 0.0000\n",
      "Epoch: 14340/20000, Loss: 0.0000\n",
      "Epoch: 14350/20000, Loss: 0.0000\n",
      "Epoch: 14360/20000, Loss: 0.0000\n",
      "Epoch: 14370/20000, Loss: 0.0000\n",
      "Epoch: 14380/20000, Loss: 0.0000\n",
      "Epoch: 14390/20000, Loss: 0.0001\n",
      "Epoch: 14400/20000, Loss: 0.0000\n",
      "Epoch: 14410/20000, Loss: 0.0000\n",
      "Epoch: 14420/20000, Loss: 0.0000\n",
      "Epoch: 14430/20000, Loss: 0.0000\n",
      "Epoch: 14440/20000, Loss: 0.0000\n",
      "Epoch: 14450/20000, Loss: 0.0000\n",
      "Epoch: 14460/20000, Loss: 0.0000\n",
      "Epoch: 14470/20000, Loss: 0.0000\n",
      "Epoch: 14480/20000, Loss: 0.0000\n",
      "Epoch: 14490/20000, Loss: 0.0000\n",
      "Epoch: 14500/20000, Loss: 0.0000\n",
      "Epoch: 14510/20000, Loss: 0.0000\n",
      "Epoch: 14520/20000, Loss: 0.0000\n",
      "Epoch: 14530/20000, Loss: 0.0000\n",
      "Epoch: 14540/20000, Loss: 0.0000\n",
      "Epoch: 14550/20000, Loss: 0.0000\n",
      "Epoch: 14560/20000, Loss: 0.0000\n",
      "Epoch: 14570/20000, Loss: 0.0000\n",
      "Epoch: 14580/20000, Loss: 0.0000\n",
      "Epoch: 14590/20000, Loss: 0.0000\n",
      "Epoch: 14600/20000, Loss: 0.0000\n",
      "Epoch: 14610/20000, Loss: 0.0000\n",
      "Epoch: 14620/20000, Loss: 0.0000\n",
      "Epoch: 14630/20000, Loss: 0.0000\n",
      "Epoch: 14640/20000, Loss: 0.0000\n",
      "Epoch: 14650/20000, Loss: 0.0000\n",
      "Epoch: 14660/20000, Loss: 0.0000\n",
      "Epoch: 14670/20000, Loss: 0.0000\n",
      "Epoch: 14680/20000, Loss: 0.0000\n",
      "Epoch: 14690/20000, Loss: 0.0000\n",
      "Epoch: 14700/20000, Loss: 0.0000\n",
      "Epoch: 14710/20000, Loss: 0.0000\n",
      "Epoch: 14720/20000, Loss: 0.0000\n",
      "Epoch: 14730/20000, Loss: 0.0000\n",
      "Epoch: 14740/20000, Loss: 0.0000\n",
      "Epoch: 14750/20000, Loss: 0.0000\n",
      "Epoch: 14760/20000, Loss: 0.0000\n",
      "Epoch: 14770/20000, Loss: 0.0000\n",
      "Epoch: 14780/20000, Loss: 0.0000\n",
      "Epoch: 14790/20000, Loss: 0.0000\n",
      "Epoch: 14800/20000, Loss: 0.0000\n",
      "Epoch: 14810/20000, Loss: 0.0000\n",
      "Epoch: 14820/20000, Loss: 0.0000\n",
      "Epoch: 14830/20000, Loss: 0.0000\n",
      "Epoch: 14840/20000, Loss: 0.0000\n",
      "Epoch: 14850/20000, Loss: 0.0000\n",
      "Epoch: 14860/20000, Loss: 0.0000\n",
      "Epoch: 14870/20000, Loss: 0.0000\n",
      "Epoch: 14880/20000, Loss: 0.0000\n",
      "Epoch: 14890/20000, Loss: 0.0000\n",
      "Epoch: 14900/20000, Loss: 0.0000\n",
      "Epoch: 14910/20000, Loss: 0.0000\n",
      "Epoch: 14920/20000, Loss: 0.0000\n",
      "Epoch: 14930/20000, Loss: 0.0000\n",
      "Epoch: 14940/20000, Loss: 0.0000\n",
      "Epoch: 14950/20000, Loss: 0.0000\n",
      "Epoch: 14960/20000, Loss: 0.0000\n",
      "Epoch: 14970/20000, Loss: 0.0000\n",
      "Epoch: 14980/20000, Loss: 0.0000\n",
      "Epoch: 14990/20000, Loss: 0.0001\n",
      "Epoch: 15000/20000, Loss: 0.0000\n",
      "Epoch: 15010/20000, Loss: 0.0000\n",
      "Epoch: 15020/20000, Loss: 0.0000\n",
      "Epoch: 15030/20000, Loss: 0.0000\n",
      "Epoch: 15040/20000, Loss: 0.0000\n",
      "Epoch: 15050/20000, Loss: 0.0000\n",
      "Epoch: 15060/20000, Loss: 0.0000\n",
      "Epoch: 15070/20000, Loss: 0.0000\n",
      "Epoch: 15080/20000, Loss: 0.0000\n",
      "Epoch: 15090/20000, Loss: 0.0000\n",
      "Epoch: 15100/20000, Loss: 0.0000\n",
      "Epoch: 15110/20000, Loss: 0.0000\n",
      "Epoch: 15120/20000, Loss: 0.0000\n",
      "Epoch: 15130/20000, Loss: 0.0000\n",
      "Epoch: 15140/20000, Loss: 0.0000\n",
      "Epoch: 15150/20000, Loss: 0.0001\n",
      "Epoch: 15160/20000, Loss: 0.0000\n",
      "Epoch: 15170/20000, Loss: 0.0000\n",
      "Epoch: 15180/20000, Loss: 0.0000\n",
      "Epoch: 15190/20000, Loss: 0.0000\n",
      "Epoch: 15200/20000, Loss: 0.0000\n",
      "Epoch: 15210/20000, Loss: 0.0000\n",
      "Epoch: 15220/20000, Loss: 0.0000\n",
      "Epoch: 15230/20000, Loss: 0.0000\n",
      "Epoch: 15240/20000, Loss: 0.0000\n",
      "Epoch: 15250/20000, Loss: 0.0000\n",
      "Epoch: 15260/20000, Loss: 0.0000\n",
      "Epoch: 15270/20000, Loss: 0.0000\n",
      "Epoch: 15280/20000, Loss: 0.0000\n",
      "Epoch: 15290/20000, Loss: 0.0000\n",
      "Epoch: 15300/20000, Loss: 0.0000\n",
      "Epoch: 15310/20000, Loss: 0.0000\n",
      "Epoch: 15320/20000, Loss: 0.0000\n",
      "Epoch: 15330/20000, Loss: 0.0001\n",
      "Epoch: 15340/20000, Loss: 0.0000\n",
      "Epoch: 15350/20000, Loss: 0.0000\n",
      "Epoch: 15360/20000, Loss: 0.0000\n",
      "Epoch: 15370/20000, Loss: 0.0000\n",
      "Epoch: 15380/20000, Loss: 0.0000\n",
      "Epoch: 15390/20000, Loss: 0.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 15400/20000, Loss: 0.0000\n",
      "Epoch: 15410/20000, Loss: 0.0000\n",
      "Epoch: 15420/20000, Loss: 0.0000\n",
      "Epoch: 15430/20000, Loss: 0.0000\n",
      "Epoch: 15440/20000, Loss: 0.0000\n",
      "Epoch: 15450/20000, Loss: 0.0000\n",
      "Epoch: 15460/20000, Loss: 0.0000\n",
      "Epoch: 15470/20000, Loss: 0.0000\n",
      "Epoch: 15480/20000, Loss: 0.0000\n",
      "Epoch: 15490/20000, Loss: 0.0000\n",
      "Epoch: 15500/20000, Loss: 0.0000\n",
      "Epoch: 15510/20000, Loss: 0.0000\n",
      "Epoch: 15520/20000, Loss: 0.0000\n",
      "Epoch: 15530/20000, Loss: 0.0000\n",
      "Epoch: 15540/20000, Loss: 0.0000\n",
      "Epoch: 15550/20000, Loss: 0.0000\n",
      "Epoch: 15560/20000, Loss: 0.0000\n",
      "Epoch: 15570/20000, Loss: 0.0000\n",
      "Epoch: 15580/20000, Loss: 0.0000\n",
      "Epoch: 15590/20000, Loss: 0.0000\n",
      "Epoch: 15600/20000, Loss: 0.0000\n",
      "Epoch: 15610/20000, Loss: 0.0000\n",
      "Epoch: 15620/20000, Loss: 0.0000\n",
      "Epoch: 15630/20000, Loss: 0.0000\n",
      "Epoch: 15640/20000, Loss: 0.0000\n",
      "Epoch: 15650/20000, Loss: 0.0000\n",
      "Epoch: 15660/20000, Loss: 0.0000\n",
      "Epoch: 15670/20000, Loss: 0.0000\n",
      "Epoch: 15680/20000, Loss: 0.0000\n",
      "Epoch: 15690/20000, Loss: 0.0000\n",
      "Epoch: 15700/20000, Loss: 0.0000\n",
      "Epoch: 15710/20000, Loss: 0.0000\n",
      "Epoch: 15720/20000, Loss: 0.0000\n",
      "Epoch: 15730/20000, Loss: 0.0000\n",
      "Epoch: 15740/20000, Loss: 0.0000\n",
      "Epoch: 15750/20000, Loss: 0.0000\n",
      "Epoch: 15760/20000, Loss: 0.0000\n",
      "Epoch: 15770/20000, Loss: 0.0000\n",
      "Epoch: 15780/20000, Loss: 0.0000\n",
      "Epoch: 15790/20000, Loss: 0.0000\n",
      "Epoch: 15800/20000, Loss: 0.0000\n",
      "Epoch: 15810/20000, Loss: 0.0001\n",
      "Epoch: 15820/20000, Loss: 0.0000\n",
      "Epoch: 15830/20000, Loss: 0.0000\n",
      "Epoch: 15840/20000, Loss: 0.0000\n",
      "Epoch: 15850/20000, Loss: 0.0000\n",
      "Epoch: 15860/20000, Loss: 0.0000\n",
      "Epoch: 15870/20000, Loss: 0.0000\n",
      "Epoch: 15880/20000, Loss: 0.0000\n",
      "Epoch: 15890/20000, Loss: 0.0000\n",
      "Epoch: 15900/20000, Loss: 0.0000\n",
      "Epoch: 15910/20000, Loss: 0.0000\n",
      "Epoch: 15920/20000, Loss: 0.0000\n",
      "Epoch: 15930/20000, Loss: 0.0000\n",
      "Epoch: 15940/20000, Loss: 0.0000\n",
      "Epoch: 15950/20000, Loss: 0.0000\n",
      "Epoch: 15960/20000, Loss: 0.0000\n",
      "Epoch: 15970/20000, Loss: 0.0000\n",
      "Epoch: 15980/20000, Loss: 0.0000\n",
      "Epoch: 15990/20000, Loss: 0.0000\n",
      "Epoch: 16000/20000, Loss: 0.0000\n",
      "Epoch: 16010/20000, Loss: 0.0000\n",
      "Epoch: 16020/20000, Loss: 0.0000\n",
      "Epoch: 16030/20000, Loss: 0.0000\n",
      "Epoch: 16040/20000, Loss: 0.0000\n",
      "Epoch: 16050/20000, Loss: 0.0000\n",
      "Epoch: 16060/20000, Loss: 0.0000\n",
      "Epoch: 16070/20000, Loss: 0.0000\n",
      "Epoch: 16080/20000, Loss: 0.0001\n",
      "Epoch: 16090/20000, Loss: 0.0000\n",
      "Epoch: 16100/20000, Loss: 0.0000\n",
      "Epoch: 16110/20000, Loss: 0.0000\n",
      "Epoch: 16120/20000, Loss: 0.0000\n",
      "Epoch: 16130/20000, Loss: 0.0000\n",
      "Epoch: 16140/20000, Loss: 0.0000\n",
      "Epoch: 16150/20000, Loss: 0.0000\n",
      "Epoch: 16160/20000, Loss: 0.0000\n",
      "Epoch: 16170/20000, Loss: 0.0000\n",
      "Epoch: 16180/20000, Loss: 0.0000\n",
      "Epoch: 16190/20000, Loss: 0.0000\n",
      "Epoch: 16200/20000, Loss: 0.0000\n",
      "Epoch: 16210/20000, Loss: 0.0000\n",
      "Epoch: 16220/20000, Loss: 0.0000\n",
      "Epoch: 16230/20000, Loss: 0.0000\n",
      "Epoch: 16240/20000, Loss: 0.0000\n",
      "Epoch: 16250/20000, Loss: 0.0000\n",
      "Epoch: 16260/20000, Loss: 0.0000\n",
      "Epoch: 16270/20000, Loss: 0.0000\n",
      "Epoch: 16280/20000, Loss: 0.0000\n",
      "Epoch: 16290/20000, Loss: 0.0000\n",
      "Epoch: 16300/20000, Loss: 0.0000\n",
      "Epoch: 16310/20000, Loss: 0.0000\n",
      "Epoch: 16320/20000, Loss: 0.0000\n",
      "Epoch: 16330/20000, Loss: 0.0000\n",
      "Epoch: 16340/20000, Loss: 0.0000\n",
      "Epoch: 16350/20000, Loss: 0.0001\n",
      "Epoch: 16360/20000, Loss: 0.0000\n",
      "Epoch: 16370/20000, Loss: 0.0000\n",
      "Epoch: 16380/20000, Loss: 0.0000\n",
      "Epoch: 16390/20000, Loss: 0.0000\n",
      "Epoch: 16400/20000, Loss: 0.0000\n",
      "Epoch: 16410/20000, Loss: 0.0000\n",
      "Epoch: 16420/20000, Loss: 0.0000\n",
      "Epoch: 16430/20000, Loss: 0.0000\n",
      "Epoch: 16440/20000, Loss: 0.0000\n",
      "Epoch: 16450/20000, Loss: 0.0000\n",
      "Epoch: 16460/20000, Loss: 0.0000\n",
      "Epoch: 16470/20000, Loss: 0.0000\n",
      "Epoch: 16480/20000, Loss: 0.0001\n",
      "Epoch: 16490/20000, Loss: 0.0000\n",
      "Epoch: 16500/20000, Loss: 0.0000\n",
      "Epoch: 16510/20000, Loss: 0.0000\n",
      "Epoch: 16520/20000, Loss: 0.0000\n",
      "Epoch: 16530/20000, Loss: 0.0000\n",
      "Epoch: 16540/20000, Loss: 0.0000\n",
      "Epoch: 16550/20000, Loss: 0.0000\n",
      "Epoch: 16560/20000, Loss: 0.0000\n",
      "Epoch: 16570/20000, Loss: 0.0000\n",
      "Epoch: 16580/20000, Loss: 0.0000\n",
      "Epoch: 16590/20000, Loss: 0.0000\n",
      "Epoch: 16600/20000, Loss: 0.0000\n",
      "Epoch: 16610/20000, Loss: 0.0000\n",
      "Epoch: 16620/20000, Loss: 0.0000\n",
      "Epoch: 16630/20000, Loss: 0.0001\n",
      "Epoch: 16640/20000, Loss: 0.0000\n",
      "Epoch: 16650/20000, Loss: 0.0000\n",
      "Epoch: 16660/20000, Loss: 0.0000\n",
      "Epoch: 16670/20000, Loss: 0.0000\n",
      "Epoch: 16680/20000, Loss: 0.0000\n",
      "Epoch: 16690/20000, Loss: 0.0000\n",
      "Epoch: 16700/20000, Loss: 0.0000\n",
      "Epoch: 16710/20000, Loss: 0.0000\n",
      "Epoch: 16720/20000, Loss: 0.0000\n",
      "Epoch: 16730/20000, Loss: 0.0000\n",
      "Epoch: 16740/20000, Loss: 0.0000\n",
      "Epoch: 16750/20000, Loss: 0.0000\n",
      "Epoch: 16760/20000, Loss: 0.0000\n",
      "Epoch: 16770/20000, Loss: 0.0000\n",
      "Epoch: 16780/20000, Loss: 0.0000\n",
      "Epoch: 16790/20000, Loss: 0.0000\n",
      "Epoch: 16800/20000, Loss: 0.0001\n",
      "Epoch: 16810/20000, Loss: 0.0000\n",
      "Epoch: 16820/20000, Loss: 0.0000\n",
      "Epoch: 16830/20000, Loss: 0.0000\n",
      "Epoch: 16840/20000, Loss: 0.0000\n",
      "Epoch: 16850/20000, Loss: 0.0000\n",
      "Epoch: 16860/20000, Loss: 0.0000\n",
      "Epoch: 16870/20000, Loss: 0.0000\n",
      "Epoch: 16880/20000, Loss: 0.0000\n",
      "Epoch: 16890/20000, Loss: 0.0000\n",
      "Epoch: 16900/20000, Loss: 0.0000\n",
      "Epoch: 16910/20000, Loss: 0.0000\n",
      "Epoch: 16920/20000, Loss: 0.0000\n",
      "Epoch: 16930/20000, Loss: 0.0000\n",
      "Epoch: 16940/20000, Loss: 0.0000\n",
      "Epoch: 16950/20000, Loss: 0.0000\n",
      "Epoch: 16960/20000, Loss: 0.0000\n",
      "Epoch: 16970/20000, Loss: 0.0001\n",
      "Epoch: 16980/20000, Loss: 0.0001\n",
      "Epoch: 16990/20000, Loss: 0.0000\n",
      "Epoch: 17000/20000, Loss: 0.0000\n",
      "Epoch: 17010/20000, Loss: 0.0000\n",
      "Epoch: 17020/20000, Loss: 0.0000\n",
      "Epoch: 17030/20000, Loss: 0.0000\n",
      "Epoch: 17040/20000, Loss: 0.0000\n",
      "Epoch: 17050/20000, Loss: 0.0000\n",
      "Epoch: 17060/20000, Loss: 0.0000\n",
      "Epoch: 17070/20000, Loss: 0.0000\n",
      "Epoch: 17080/20000, Loss: 0.0000\n",
      "Epoch: 17090/20000, Loss: 0.0000\n",
      "Epoch: 17100/20000, Loss: 0.0000\n",
      "Epoch: 17110/20000, Loss: 0.0000\n",
      "Epoch: 17120/20000, Loss: 0.0000\n",
      "Epoch: 17130/20000, Loss: 0.0000\n",
      "Epoch: 17140/20000, Loss: 0.0000\n",
      "Epoch: 17150/20000, Loss: 0.0000\n",
      "Epoch: 17160/20000, Loss: 0.0001\n",
      "Epoch: 17170/20000, Loss: 0.0000\n",
      "Epoch: 17180/20000, Loss: 0.0000\n",
      "Epoch: 17190/20000, Loss: 0.0000\n",
      "Epoch: 17200/20000, Loss: 0.0000\n",
      "Epoch: 17210/20000, Loss: 0.0000\n",
      "Epoch: 17220/20000, Loss: 0.0000\n",
      "Epoch: 17230/20000, Loss: 0.0000\n",
      "Epoch: 17240/20000, Loss: 0.0000\n",
      "Epoch: 17250/20000, Loss: 0.0000\n",
      "Epoch: 17260/20000, Loss: 0.0000\n",
      "Epoch: 17270/20000, Loss: 0.0000\n",
      "Epoch: 17280/20000, Loss: 0.0001\n",
      "Epoch: 17290/20000, Loss: 0.0000\n",
      "Epoch: 17300/20000, Loss: 0.0000\n",
      "Epoch: 17310/20000, Loss: 0.0000\n",
      "Epoch: 17320/20000, Loss: 0.0000\n",
      "Epoch: 17330/20000, Loss: 0.0000\n",
      "Epoch: 17340/20000, Loss: 0.0000\n",
      "Epoch: 17350/20000, Loss: 0.0000\n",
      "Epoch: 17360/20000, Loss: 0.0000\n",
      "Epoch: 17370/20000, Loss: 0.0000\n",
      "Epoch: 17380/20000, Loss: 0.0000\n",
      "Epoch: 17390/20000, Loss: 0.0000\n",
      "Epoch: 17400/20000, Loss: 0.0000\n",
      "Epoch: 17410/20000, Loss: 0.0000\n",
      "Epoch: 17420/20000, Loss: 0.0000\n",
      "Epoch: 17430/20000, Loss: 0.0000\n",
      "Epoch: 17440/20000, Loss: 0.0000\n",
      "Epoch: 17450/20000, Loss: 0.0000\n",
      "Epoch: 17460/20000, Loss: 0.0000\n",
      "Epoch: 17470/20000, Loss: 0.0000\n",
      "Epoch: 17480/20000, Loss: 0.0000\n",
      "Epoch: 17490/20000, Loss: 0.0000\n",
      "Epoch: 17500/20000, Loss: 0.0000\n",
      "Epoch: 17510/20000, Loss: 0.0000\n",
      "Epoch: 17520/20000, Loss: 0.0000\n",
      "Epoch: 17530/20000, Loss: 0.0000\n",
      "Epoch: 17540/20000, Loss: 0.0000\n",
      "Epoch: 17550/20000, Loss: 0.0000\n",
      "Epoch: 17560/20000, Loss: 0.0000\n",
      "Epoch: 17570/20000, Loss: 0.0000\n",
      "Epoch: 17580/20000, Loss: 0.0000\n",
      "Epoch: 17590/20000, Loss: 0.0000\n",
      "Epoch: 17600/20000, Loss: 0.0000\n",
      "Epoch: 17610/20000, Loss: 0.0000\n",
      "Epoch: 17620/20000, Loss: 0.0000\n",
      "Epoch: 17630/20000, Loss: 0.0000\n",
      "Epoch: 17640/20000, Loss: 0.0000\n",
      "Epoch: 17650/20000, Loss: 0.0000\n",
      "Epoch: 17660/20000, Loss: 0.0000\n",
      "Epoch: 17670/20000, Loss: 0.0000\n",
      "Epoch: 17680/20000, Loss: 0.0000\n",
      "Epoch: 17690/20000, Loss: 0.0000\n",
      "Epoch: 17700/20000, Loss: 0.0000\n",
      "Epoch: 17710/20000, Loss: 0.0000\n",
      "Epoch: 17720/20000, Loss: 0.0000\n",
      "Epoch: 17730/20000, Loss: 0.0000\n",
      "Epoch: 17740/20000, Loss: 0.0000\n",
      "Epoch: 17750/20000, Loss: 0.0000\n",
      "Epoch: 17760/20000, Loss: 0.0000\n",
      "Epoch: 17770/20000, Loss: 0.0000\n",
      "Epoch: 17780/20000, Loss: 0.0000\n",
      "Epoch: 17790/20000, Loss: 0.0000\n",
      "Epoch: 17800/20000, Loss: 0.0001\n",
      "Epoch: 17810/20000, Loss: 0.0000\n",
      "Epoch: 17820/20000, Loss: 0.0000\n",
      "Epoch: 17830/20000, Loss: 0.0000\n",
      "Epoch: 17840/20000, Loss: 0.0000\n",
      "Epoch: 17850/20000, Loss: 0.0000\n",
      "Epoch: 17860/20000, Loss: 0.0000\n",
      "Epoch: 17870/20000, Loss: 0.0000\n",
      "Epoch: 17880/20000, Loss: 0.0000\n"
     ]
    },
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Epoch: 17890/20000, Loss: 0.0000\n",
      "Epoch: 17900/20000, Loss: 0.0000\n",
      "Epoch: 17910/20000, Loss: 0.0000\n",
      "Epoch: 17920/20000, Loss: 0.0000\n",
      "Epoch: 17930/20000, Loss: 0.0000\n",
      "Epoch: 17940/20000, Loss: 0.0000\n",
      "Epoch: 17950/20000, Loss: 0.0000\n",
      "Epoch: 17960/20000, Loss: 0.0000\n",
      "Epoch: 17970/20000, Loss: 0.0000\n",
      "Epoch: 17980/20000, Loss: 0.0000\n",
      "Epoch: 17990/20000, Loss: 0.0000\n",
      "Epoch: 18000/20000, Loss: 0.0000\n",
      "Epoch: 18010/20000, Loss: 0.0000\n",
      "Epoch: 18020/20000, Loss: 0.0000\n",
      "Epoch: 18030/20000, Loss: 0.0000\n",
      "Epoch: 18040/20000, Loss: 0.0000\n",
      "Epoch: 18050/20000, Loss: 0.0000\n",
      "Epoch: 18060/20000, Loss: 0.0000\n",
      "Epoch: 18070/20000, Loss: 0.0000\n",
      "Epoch: 18080/20000, Loss: 0.0000\n",
      "Epoch: 18090/20000, Loss: 0.0000\n",
      "Epoch: 18100/20000, Loss: 0.0000\n",
      "Epoch: 18110/20000, Loss: 0.0000\n",
      "Epoch: 18120/20000, Loss: 0.0000\n",
      "Epoch: 18130/20000, Loss: 0.0000\n",
      "Epoch: 18140/20000, Loss: 0.0000\n",
      "Epoch: 18150/20000, Loss: 0.0000\n",
      "Epoch: 18160/20000, Loss: 0.0000\n",
      "Epoch: 18170/20000, Loss: 0.0000\n",
      "Epoch: 18180/20000, Loss: 0.0000\n",
      "Epoch: 18190/20000, Loss: 0.0000\n",
      "Epoch: 18200/20000, Loss: 0.0000\n",
      "Epoch: 18210/20000, Loss: 0.0000\n",
      "Epoch: 18220/20000, Loss: 0.0000\n",
      "Epoch: 18230/20000, Loss: 0.0000\n",
      "Epoch: 18240/20000, Loss: 0.0000\n",
      "Epoch: 18250/20000, Loss: 0.0000\n",
      "Epoch: 18260/20000, Loss: 0.0000\n",
      "Epoch: 18270/20000, Loss: 0.0000\n",
      "Epoch: 18280/20000, Loss: 0.0000\n",
      "Epoch: 18290/20000, Loss: 0.0000\n",
      "Epoch: 18300/20000, Loss: 0.0000\n",
      "Epoch: 18310/20000, Loss: 0.0000\n",
      "Epoch: 18320/20000, Loss: 0.0000\n",
      "Epoch: 18330/20000, Loss: 0.0000\n",
      "Epoch: 18340/20000, Loss: 0.0000\n",
      "Epoch: 18350/20000, Loss: 0.0000\n",
      "Epoch: 18360/20000, Loss: 0.0000\n",
      "Epoch: 18370/20000, Loss: 0.0000\n",
      "Epoch: 18380/20000, Loss: 0.0000\n",
      "Epoch: 18390/20000, Loss: 0.0000\n",
      "Epoch: 18400/20000, Loss: 0.0000\n",
      "Epoch: 18410/20000, Loss: 0.0000\n",
      "Epoch: 18420/20000, Loss: 0.0000\n",
      "Epoch: 18430/20000, Loss: 0.0000\n",
      "Epoch: 18440/20000, Loss: 0.0000\n",
      "Epoch: 18450/20000, Loss: 0.0000\n",
      "Epoch: 18460/20000, Loss: 0.0000\n",
      "Epoch: 18470/20000, Loss: 0.0000\n",
      "Epoch: 18480/20000, Loss: 0.0000\n",
      "Epoch: 18490/20000, Loss: 0.0000\n",
      "Epoch: 18500/20000, Loss: 0.0000\n",
      "Epoch: 18510/20000, Loss: 0.0000\n",
      "Epoch: 18520/20000, Loss: 0.0000\n",
      "Epoch: 18530/20000, Loss: 0.0000\n",
      "Epoch: 18540/20000, Loss: 0.0000\n",
      "Epoch: 18550/20000, Loss: 0.0000\n",
      "Epoch: 18560/20000, Loss: 0.0000\n",
      "Epoch: 18570/20000, Loss: 0.0001\n",
      "Epoch: 18580/20000, Loss: 0.0000\n",
      "Epoch: 18590/20000, Loss: 0.0000\n",
      "Epoch: 18600/20000, Loss: 0.0000\n",
      "Epoch: 18610/20000, Loss: 0.0000\n",
      "Epoch: 18620/20000, Loss: 0.0000\n",
      "Epoch: 18630/20000, Loss: 0.0000\n",
      "Epoch: 18640/20000, Loss: 0.0000\n",
      "Epoch: 18650/20000, Loss: 0.0000\n",
      "Epoch: 18660/20000, Loss: 0.0000\n",
      "Epoch: 18670/20000, Loss: 0.0000\n",
      "Epoch: 18680/20000, Loss: 0.0000\n",
      "Epoch: 18690/20000, Loss: 0.0000\n",
      "Epoch: 18700/20000, Loss: 0.0000\n",
      "Epoch: 18710/20000, Loss: 0.0000\n",
      "Epoch: 18720/20000, Loss: 0.0000\n",
      "Epoch: 18730/20000, Loss: 0.0000\n",
      "Epoch: 18740/20000, Loss: 0.0000\n",
      "Epoch: 18750/20000, Loss: 0.0000\n",
      "Epoch: 18760/20000, Loss: 0.0000\n",
      "Epoch: 18770/20000, Loss: 0.0001\n",
      "Epoch: 18780/20000, Loss: 0.0000\n",
      "Epoch: 18790/20000, Loss: 0.0000\n",
      "Epoch: 18800/20000, Loss: 0.0000\n",
      "Epoch: 18810/20000, Loss: 0.0000\n",
      "Epoch: 18820/20000, Loss: 0.0000\n",
      "Epoch: 18830/20000, Loss: 0.0000\n",
      "Epoch: 18840/20000, Loss: 0.0000\n",
      "Epoch: 18850/20000, Loss: 0.0000\n",
      "Epoch: 18860/20000, Loss: 0.0000\n",
      "Epoch: 18870/20000, Loss: 0.0000\n",
      "Epoch: 18880/20000, Loss: 0.0000\n",
      "Epoch: 18890/20000, Loss: 0.0000\n",
      "Epoch: 18900/20000, Loss: 0.0000\n",
      "Epoch: 18910/20000, Loss: 0.0000\n",
      "Epoch: 18920/20000, Loss: 0.0000\n",
      "Epoch: 18930/20000, Loss: 0.0000\n",
      "Epoch: 18940/20000, Loss: 0.0000\n",
      "Epoch: 18950/20000, Loss: 0.0000\n",
      "Epoch: 18960/20000, Loss: 0.0000\n",
      "Epoch: 18970/20000, Loss: 0.0000\n",
      "Epoch: 18980/20000, Loss: 0.0000\n",
      "Epoch: 18990/20000, Loss: 0.0000\n",
      "Epoch: 19000/20000, Loss: 0.0000\n",
      "Epoch: 19010/20000, Loss: 0.0000\n",
      "Epoch: 19020/20000, Loss: 0.0000\n",
      "Epoch: 19030/20000, Loss: 0.0000\n",
      "Epoch: 19040/20000, Loss: 0.0000\n",
      "Epoch: 19050/20000, Loss: 0.0000\n",
      "Epoch: 19060/20000, Loss: 0.0000\n",
      "Epoch: 19070/20000, Loss: 0.0000\n",
      "Epoch: 19080/20000, Loss: 0.0000\n",
      "Epoch: 19090/20000, Loss: 0.0000\n",
      "Epoch: 19100/20000, Loss: 0.0000\n",
      "Epoch: 19110/20000, Loss: 0.0000\n",
      "Epoch: 19120/20000, Loss: 0.0000\n",
      "Epoch: 19130/20000, Loss: 0.0000\n",
      "Epoch: 19140/20000, Loss: 0.0000\n",
      "Epoch: 19150/20000, Loss: 0.0000\n",
      "Epoch: 19160/20000, Loss: 0.0000\n",
      "Epoch: 19170/20000, Loss: 0.0000\n",
      "Epoch: 19180/20000, Loss: 0.0000\n",
      "Epoch: 19190/20000, Loss: 0.0000\n",
      "Epoch: 19200/20000, Loss: 0.0000\n",
      "Epoch: 19210/20000, Loss: 0.0000\n",
      "Epoch: 19220/20000, Loss: 0.0000\n",
      "Epoch: 19230/20000, Loss: 0.0000\n",
      "Epoch: 19240/20000, Loss: 0.0000\n",
      "Epoch: 19250/20000, Loss: 0.0000\n",
      "Epoch: 19260/20000, Loss: 0.0000\n",
      "Epoch: 19270/20000, Loss: 0.0000\n",
      "Epoch: 19280/20000, Loss: 0.0000\n",
      "Epoch: 19290/20000, Loss: 0.0000\n",
      "Epoch: 19300/20000, Loss: 0.0000\n",
      "Epoch: 19310/20000, Loss: 0.0000\n",
      "Epoch: 19320/20000, Loss: 0.0000\n",
      "Epoch: 19330/20000, Loss: 0.0000\n",
      "Epoch: 19340/20000, Loss: 0.0000\n",
      "Epoch: 19350/20000, Loss: 0.0000\n",
      "Epoch: 19360/20000, Loss: 0.0000\n",
      "Epoch: 19370/20000, Loss: 0.0000\n",
      "Epoch: 19380/20000, Loss: 0.0000\n",
      "Epoch: 19390/20000, Loss: 0.0001\n",
      "Epoch: 19400/20000, Loss: 0.0000\n",
      "Epoch: 19410/20000, Loss: 0.0000\n",
      "Epoch: 19420/20000, Loss: 0.0000\n",
      "Epoch: 19430/20000, Loss: 0.0000\n",
      "Epoch: 19440/20000, Loss: 0.0000\n",
      "Epoch: 19450/20000, Loss: 0.0000\n",
      "Epoch: 19460/20000, Loss: 0.0000\n",
      "Epoch: 19470/20000, Loss: 0.0000\n",
      "Epoch: 19480/20000, Loss: 0.0000\n",
      "Epoch: 19490/20000, Loss: 0.0000\n",
      "Epoch: 19500/20000, Loss: 0.0000\n",
      "Epoch: 19510/20000, Loss: 0.0000\n",
      "Epoch: 19520/20000, Loss: 0.0000\n",
      "Epoch: 19530/20000, Loss: 0.0000\n",
      "Epoch: 19540/20000, Loss: 0.0000\n",
      "Epoch: 19550/20000, Loss: 0.0000\n",
      "Epoch: 19560/20000, Loss: 0.0000\n",
      "Epoch: 19570/20000, Loss: 0.0001\n",
      "Epoch: 19580/20000, Loss: 0.0000\n",
      "Epoch: 19590/20000, Loss: 0.0000\n",
      "Epoch: 19600/20000, Loss: 0.0000\n",
      "Epoch: 19610/20000, Loss: 0.0000\n",
      "Epoch: 19620/20000, Loss: 0.0000\n",
      "Epoch: 19630/20000, Loss: 0.0000\n",
      "Epoch: 19640/20000, Loss: 0.0000\n",
      "Epoch: 19650/20000, Loss: 0.0000\n",
      "Epoch: 19660/20000, Loss: 0.0000\n",
      "Epoch: 19670/20000, Loss: 0.0000\n",
      "Epoch: 19680/20000, Loss: 0.0000\n",
      "Epoch: 19690/20000, Loss: 0.0000\n",
      "Epoch: 19700/20000, Loss: 0.0000\n",
      "Epoch: 19710/20000, Loss: 0.0000\n",
      "Epoch: 19720/20000, Loss: 0.0000\n",
      "Epoch: 19730/20000, Loss: 0.0000\n",
      "Epoch: 19740/20000, Loss: 0.0000\n",
      "Epoch: 19750/20000, Loss: 0.0000\n",
      "Epoch: 19760/20000, Loss: 0.0000\n",
      "Epoch: 19770/20000, Loss: 0.0000\n",
      "Epoch: 19780/20000, Loss: 0.0000\n",
      "Epoch: 19790/20000, Loss: 0.0000\n",
      "Epoch: 19800/20000, Loss: 0.0000\n",
      "Epoch: 19810/20000, Loss: 0.0000\n",
      "Epoch: 19820/20000, Loss: 0.0000\n",
      "Epoch: 19830/20000, Loss: 0.0000\n",
      "Epoch: 19840/20000, Loss: 0.0000\n",
      "Epoch: 19850/20000, Loss: 0.0000\n",
      "Epoch: 19860/20000, Loss: 0.0000\n",
      "Epoch: 19870/20000, Loss: 0.0000\n",
      "Epoch: 19880/20000, Loss: 0.0000\n",
      "Epoch: 19890/20000, Loss: 0.0000\n",
      "Epoch: 19900/20000, Loss: 0.0000\n",
      "Epoch: 19910/20000, Loss: 0.0000\n",
      "Epoch: 19920/20000, Loss: 0.0000\n",
      "Epoch: 19930/20000, Loss: 0.0000\n",
      "Epoch: 19940/20000, Loss: 0.0000\n",
      "Epoch: 19950/20000, Loss: 0.0000\n",
      "Epoch: 19960/20000, Loss: 0.0000\n",
      "Epoch: 19970/20000, Loss: 0.0000\n",
      "Epoch: 19980/20000, Loss: 0.0000\n",
      "Epoch: 19990/20000, Loss: 0.0000\n",
      "Epoch: 20000/20000, Loss: 0.0000\n"
     ]
    }
   ],
   "source": [
    "# Create LSTM instance\n",
    "lstm = LSTM(input_size, hidden_size, output_size)\n",
    "\n",
    "# Loss and optimizer\n",
    "criterion = nn.MSELoss()\n",
    "optimizer = torch.optim.Adam(lstm.parameters(), lr=0.01)\n",
    "\n",
    "# Training loop\n",
    "for epoch in range(num_epochs):\n",
    "    # Set initial hidden state and cell state\n",
    "    hidden = torch.zeros(1, batch_size, hidden_size)\n",
    "    cell = torch.zeros(1, batch_size, hidden_size)\n",
    "\n",
    "    # Forward pass\n",
    "    output, (hidden, cell) = lstm(input_tensor, (hidden, cell))\n",
    "    loss = criterion(output, target_tensor)\n",
    "\n",
    "    # Backward and optimize\n",
    "    optimizer.zero_grad()\n",
    "    loss.backward()\n",
    "    optimizer.step()\n",
    "\n",
    "    # Print progress\n",
    "    if (epoch+1) % 10 == 0:\n",
    "        print(f'Epoch: {epoch+1}/{num_epochs}, Loss: {loss.item():.4f}')\n",
    "\n",
    "\n",
    "\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "id": "7d1d078b",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "torch.Size([1, 1, 201])\n",
      "torch.Size([1, 20, 201])\n"
     ]
    }
   ],
   "source": [
    "print(test_tensor.shape)\n",
    "prediction_tensor = torch.zeros(1, 20, 201).float()\n",
    "print(prediction_tensor.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "id": "68654f17",
   "metadata": {},
   "outputs": [],
   "source": [
    "with torch.no_grad():\n",
    "    hidden_pred = torch.zeros(1, batch_size, hidden_size)\n",
    "    cell_pred = torch.zeros(1, batch_size, hidden_size)\n",
    "    prediction, _ = lstm(test_tensor, (hidden_pred, cell_pred))\n",
    "    prediction = prediction.view(1, 1, 201).float()\n",
    "    prediction_tensor[:, 0, :] = prediction\n",
    "    for i in range(19):\n",
    "        hidden_pred = torch.zeros(1, batch_size, hidden_size)\n",
    "        cell_pred = torch.zeros(1, batch_size, hidden_size)\n",
    "        prediction, _ = lstm(test_tensor, (hidden_pred, cell_pred))\n",
    "        prediction = prediction.view(1, 1, 201).float()\n",
    "        prediction_tensor[:, i+1, :] = prediction"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 17,
   "id": "c82f19b0",
   "metadata": {},
   "outputs": [],
   "source": [
    "# exact\n",
    "u_test = u\n",
    "u_test_full = u_test[80:100, :]"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "95ec50cb",
   "metadata": {},
   "source": [
    "### L2 error"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 18,
   "id": "52347ae2",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Relative Error Test:  0.04271461921685366 %\n"
     ]
    }
   ],
   "source": [
    "\n",
    "k1 = (prediction_tensor - u_test_full)**2\n",
    "u_test_full_tensor = torch.tensor(u_test_full**2)\n",
    "# Compute the relative L2 error norm (generalization error)\n",
    "relative_error_test = torch.mean(k1)/ torch.mean(u_test_full_tensor)\n",
    "\n",
    "print(\"Relative Error Test: \", relative_error_test.item(), \"%\")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f620459c",
   "metadata": {},
   "source": [
    "### Max absolute error"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 19,
   "id": "d3e153c5",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "tensor(0.2675, dtype=torch.float64)\n"
     ]
    }
   ],
   "source": [
    "R_abs = torch.max(prediction-u_test_full)\n",
    "print(R_abs)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7631fe31",
   "metadata": {},
   "source": [
    "### Explained variance score"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 20,
   "id": "119f15f1",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Explained Variance Score: 0.9568952358957212\n"
     ]
    }
   ],
   "source": [
    "import torch\n",
    "\n",
    "a = prediction\n",
    "b = u_test_full\n",
    "# Assuming 'a' is your predicted values (model's predictions) and 'b' is the true values (ground truth)\n",
    "# Make sure 'a' and 'b' are PyTorch tensors\n",
    "b = torch.tensor(b)\n",
    "# Calculate the mean of 'b'\n",
    "mean_b = torch.mean(b)\n",
    "\n",
    "# Calculate the Explained Variance Score\n",
    "numerator = torch.var(b - a)  # Variance of the differences between 'b' and 'a'\n",
    "denominator = torch.var(b)    # Variance of 'b'\n",
    "evs = 1 - numerator / denominator\n",
    "\n",
    "print(\"Explained Variance Score:\", evs.item())\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "e10c99fd",
   "metadata": {},
   "source": [
    "### Mean absolute error"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 21,
   "id": "14690b43",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "tensor(0.1764, dtype=torch.float64)"
      ]
     },
     "execution_count": 21,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "R_mean = torch.mean(torch.abs(prediction - u_test_full))\n",
    "R_mean"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 22,
   "id": "8d49950d",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "torch.Size([20, 201])"
      ]
     },
     "execution_count": 22,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "prediction_tensor = torch.squeeze(prediction_tensor)\n",
    "prediction_tensor.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 24,
   "id": "0100ffa2",
   "metadata": {},
   "outputs": [],
   "source": [
    "conc_u = torch.squeeze(input_tensor)\n",
    "prediction_tensor = torch.squeeze(prediction_tensor)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 25,
   "id": "6814f822",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "torch.Size([20, 201])"
      ]
     },
     "execution_count": 25,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "prediction_tensor = torch.squeeze(prediction_tensor)\n",
    "prediction_tensor.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 26,
   "id": "139d076b",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "torch.Size([100, 201])"
      ]
     },
     "execution_count": 26,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "concatenated_tensor = torch.cat((conc_u, prediction_tensor), dim=0)\n",
    "\n",
    "concatenated_tensor.shape"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 27,
   "id": "8a1bce19",
   "metadata": {},
   "outputs": [],
   "source": [
    "t1 = np.linspace(0, 1 , 100)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 35,
   "id": "55d65543",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "findfont: Font family ['Times New Roman'] not found. Falling back to DejaVu Sans.\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAXwAAAF7CAYAAADR4jByAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjUuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/YYfK9AAAACXBIWXMAAAsTAAALEwEAmpwYAABGL0lEQVR4nO2dd3gc1dWH3yNblmzLFWPcwDYYsMFgGwOmhN5rqKEmdBJaSAKEEkjyBQKhQyCB0HsIH+2jmF4SAphiY2yKG2CKuymWZFuyJZ3vj7trraSd2aLZmdXOeZ/nPqvde+fO0c7sb++ee+65oqoYhmEYpU9Z1AYYhmEY4WCCbxiGERNM8A3DMGKCCb5hGEZMMME3DMOICSb4hmEYMcEE3zCKABE5SESeF5FFIlInIp+LyN9FZIMA+l5fRP4mIrNEZIWIfC8i74rIOSJSEVYfRvSIxeEbpYqIHA48AqwCqlR1dcQmtUFEBLgDONGjSS1whKpOzLP/I4B7gEqPJh8Be6rqgkL2YRQHNsI3SpnxicePi1HsE1xIs9g/AowB+gM/BuYCVcC/RGSjXDsWke2AB3BCPQ84BhgADAFOBb4DRgP/JyKdCtWHUTzYCN8oWUTkJWB34C5VPSlqe1ojIusAnwHdgWeBAzTlAykiw4HpifpHVfXwHPt/C9gWWA1spqozW9VvB7yZeHqyqt5ZiD6M4sFG+EYps0Xi8YNIrfDmZzgxB/idthp9qeoXwO2Jp4eISP9sOxaRdXFCDXBva6FO9P8W8Ezi6ZmF6MMoLkzwjZJCRHqJiIqIAn0TL9+UfC1RFkVpYwoHJB5nq+qHHm0eTTyWAfvn0PeYlL/f9mk3KfE4VkSGFqAPo4gwwTdKjdFZtJlecCuyY1zi8R2fNu8DjYm/t/Bp15peKX/P92mXWte6/yD6MIqIzlEbYBgBMwnoAZwFXA4sAFpPeHpO4CYmHru2xwBVrc3URkQG4yZkAT736ateRBbgJkk3zsGM6pS/B/m0S60bWYA+jCLCRvhGSaGqjQnBHZV4aaqq1rYq9T5d7ADUtLNkQ7+Uv5dkaLs48bhWln0DfJry9wSfdql1/VrVBdGHUUSY4BulStL/XKwTtt1T/q7L0HZl4rHKt1UKqjoH+Djx9HgR2bB1GxHZhuZ5hDb9B9GHUVyY4Bslh4h0IWWEn8uxqvq6qkp7SuD/UP5cnHjsArwiIkeKyDoiMkhETsJF16R+2aSL0Q6iD6NIMME3SpFNgPLE31MjtMOP5Sl/e61gTZKcU8g4N5CKqj4JXIAT4XWBfwILcQuo7sDNdfw85ZAfCtGHUTzYpK1RioxNPNYCc3I5MKxJW2Bpyt9rZ2ibrP82D1uuFJHXgbOBHRN9fQ+8DlzRqs+vC9WHURyY4BulyNjE47TWi5myYAfgtXaePxu3znzcF1IVMNyzI5eYLBkF02bhUzao6jvA0R7975HydHIh+zCix1w6RimSnLCdGqURfiS+iJITyn4RMOOBZI6aKQUwZc/E41LyF+sg+jBCwATfKEWSi6+m5XpgyJO2TyceNxKRzTzaHJZ4bKI5hUEgiEhPXHoHgPvySTAXRB9GeJjgGyVFIt1wMha82q9tEXAfsCLx959bV4rIMFxGSoDHVXVx6zb5kpiruB2XmfNbnC8+9D6McDHBN0qKhKskmSvnFyKyiYj0EJEqEckUDRMqqrqIZqE/QEQeFpHNRGRtEdkfeBUXr18L/K718SKyc0p+oOPT1A8VkckickbifegjIuuKyGG43Dg/ARqAE1V1aevjg+rDKB5s0tYoRe4ELsJFlHyc8vq9wPFRGOTDFcAGuJz4RyRKKskNUGbl0bfgctt45bf5AZfS+KkC92EUCSb4RilyCW5jjuOADWmOc58alUFeJH6RnCQiz+Di2bcAeuKieF4ArlHVz/LsfhFwLrAHbm3C2kA98AXwFHCLqi4MoQ+jSLANUAzDMGKC+fANwzBiggm+YRhGTDDBNwzDiAkm+IZhGDHBonQKSGJfVcMwjIKQazpuG+EbhmHEBBvhh4CFvhqGESQug0ju2AjfMAwjJsR2hC8iPYBdgK2ALROPyU2iR6nqjKhsMwzDKASxFXxgN+CJqI0wDMMIizgLPsBi4H3gPdwenbdFa45hGEbhiG0uHRHppKqNKc+H4RJCQUAunWRYZlzfY8MwCkNy0tbCMrMkVewNwzDiQNxdOkYHp6YG5sxx5ZtvoLravVZbCytXggiUlTU/duoEPXpAz57Qq1dzGTQIhg6F/v1d27ihCsuWwYIFMH++e/zuO1i+vGWpr2/5fibf0169oHdvWHttGDHClUGD4vleFjMm+EaHY+5cuP12ePZZ+PDDYPuurHTCP3o0jB8PW28N22/vXi8VVOGzz+D11+Gdd+CTT1z54Ydgz7P22rD77vCzn8Gee7ovByNaYuvDb02uPvxc0ibYexwMtbVw3nlw223Q1BTeebt3h732goMPhkMPha5dwzt3kHz8MdxzDzz8sPs1FCabbw533glbbhnueUuVfH34JvgJTPCLmy+/hL33hhkRr47o2xfOPht+/WvnGip2VOH55+FPf4JJk6K1pbwcbr0VTjwxWjtKARP8dmJROsVLTY0bGc7KZ1fXArHOOnDzzXDYYVFb4s1XX8Gpp8ILL0RtSUueegoOOCBqKzo2FqVjlCxnnVVcYg+waBEcfjicdBKsWhW1NW155hnYbLPiE3uAE06AefOitiKemOAbRc0bb8C990ZthTd33eX8+7W1UVvSzK23woEHuoilYuTbb+GCC6K2Ip6YSyeBuXSKkyOOgEce8W+zzjqw6aawwQYurLKqyvnXu3d39U1Nrqi60Xh1tSvLlrnHJUvcHMGXX0JdXX527rabG1VHHc1z771w/PH5Hdu5Mwwe7MIpBw5072vyfUyWykr3Pibfz6YmF6pZXe2EfO5c92vsk09cvRfl5S78s1+//GyNO+bDbycm+MXHDz/AgAFOUNIxaJD7Mthuu2DivVWdq2b6dJg8GV591YUurl6d3fHHHw93391+O/LljTdgl12gMcslhaNGwa67wg47uCiaESOcEAfB4sVwzjnwwAPebf76V+euM3LHBL+dmOAXH7fdBj//efq6zp1dDP4mmxTWhmXL4PHH4Zpr3Kg1Ew8+CEcfXVib0vHddzBmTOZwy27d4OSTnR997NjC2tTU5OLwX3stff348fD++4W1oVSxSds8EJF+yQL0SanqnVonIrF+n6LCz5Wzzz6FF3twK0hPOAGmTYObbsrssjntNFi4sPB2teZXv8os9gccALNnw403Fl7swS20+vWvvesnT4bPPy+8HUYzcReyJSllSsrrb7eqWy980+KNKrz7rnf9cceFZwu49AFnngn/+Q+stZZ3u+pquOSS8OwCt1r2/vv921x4ITz5pHODhcnee7sVt1689154thgm+EaR8uWXLv4+HV26wP77h2tPkq22guee819te+ed7hdBGKjCb37j3+bss+HPf44mtUF5ORx0kHd9WO+T4Yi14KuqZFnmRm1r3PATgk03hYqK8GxpzVZbObeIF6rwl7+EY8vrr8Nbb3nXb7MNXH11tEnMxo3zrjPB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\n",
      "text/plain": [
       "<Figure size 360x360 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import torch\n",
    "\n",
    "# Create the figure and axis objects with reduced width\n",
    "fig, ax = plt.subplots(figsize=(5, 5))  # You can adjust the width (7 inches) and height (5 inches) as needed\n",
    "\n",
    "# # Make sure the font is Times Roman\n",
    "# plt.rcParams['font.family'] = 'Times New Roman'\n",
    "\n",
    "# # Perform the prediction\n",
    "# with torch.no_grad():\n",
    "#     prediction = lem(test_tensor)\n",
    "\n",
    "final_time_output = prediction_tensor[-2, :]\n",
    "final_out = final_time_output.detach().numpy().reshape(-1, 1)\n",
    "final_true = u[-2, :].reshape(-1, 1)\n",
    "\n",
    "# Plot the data with red and blue lines, one with dotted and one with solid style\n",
    "ax.plot(x.T, final_out, color='red', linestyle='dotted', linewidth=12, label='Prediction')\n",
    "ax.plot(x.T, final_true, color='blue', linestyle='solid', linewidth=7, label='True')\n",
    "\n",
    "# Set the axis labels with bold font weight\n",
    "ax.set_xlabel(r\"${x}$\", fontsize=26, color='black', fontdict={'weight': 'bold'})\n",
    "ax.set_ylabel(r\"${u(x, t)}$\", fontsize=26, color='black', fontdict={'weight': 'bold'})\n",
    "\n",
    "# Set the title with bold font weight\n",
    "ax.set_title(r\"${t = 0.99}$\", fontsize=26, color='black', fontweight='bold')\n",
    "\n",
    "# Set the number of ticks for x-axis and y-axis to 3\n",
    "ax.set_xticks([0, 0.5, 1])\n",
    "ax.set_yticks([-1, 0, 1])\n",
    "\n",
    "# Set tick labels fontweight to bold and increase font size\n",
    "ax.tick_params(axis='both', which='major', labelsize=20, width=2, length=10)\n",
    "\n",
    "# # Set the fontweight for tick labels to bold\n",
    "# for tick in ax.get_xticklabels() + ax.get_yticklabels():\n",
    "#     tick.set_weight('bold')\n",
    "\n",
    "# Set the spines linewidth to bold\n",
    "ax.spines['top'].set_linewidth(2)\n",
    "ax.spines['right'].set_linewidth(2)\n",
    "ax.spines['bottom'].set_linewidth(2)\n",
    "ax.spines['left'].set_linewidth(2)\n",
    "\n",
    "\n",
    "# Increase font size for x and y axis numbers\n",
    "ax.tick_params(axis='both', which='major', labelsize=24)\n",
    "\n",
    "# Set the legend\n",
    "# ax.legend()\n",
    "\n",
    "plt.savefig('LSTM_0.99_20.pdf', dpi=500, bbox_inches=\"tight\")\n",
    "\n",
    "# Show the plot\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 34,
   "id": "832a9243",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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evZUveoq1T//WXXAgNTtprn9hqt8iy++OLqvysh/vvwy4HbstkG1Q4f07rNUbsTu3VU32qil++Tllxs7U13tXCjp3ts9e6o+/3x6rp2gba+9VJcvT/ldJWhLah1Kp5JtORTzVatU27RRveIK55OrZ8qU4JvlqKMa69bVqc6cqXrNNaq77OLKN9lE9c473Y358suqEyaovvmm6qmnZneTetuxPOhbfPvt0XxVRmGwfr1qWZn/7bOaAJHu2VP1jjtUJ09u3b1ZXq66enVjZ954I5T7vVXbttu6/+8ATMxj3lol5osXq154oep++6luvrnqQQepXn216sqVTes98ojqn/7U+L62VvXee1X79Qu+UUaNair+icyerXr33aqHHBLcxjHHuIGhQw9NL1ogYduZt3yLn38+s6/KKD6CfgROZ3jLneXlqueco7pihep337lGdtgho3tSQXXHHZt25De/ybyNMLcUA7Mm5jFvGYv53Xerdu2a/OIOGKD6+uuNdefMca91darvvONuxlQ3yEcfNRXy9euT9+PZZ1X79PFv5/33VS+/XHXSJPcAuOAC1W7d0rpJN2ahb/GsWel/VUZxsttu/rfPsxzUcueRR6r+8Ieqm27qNlXVe+5J615ssl1wQdOObLxx5m2EufXqpbp2re/3ZGIe85aRmL/0Umort0MH1U8/bTxm4cL0wrRA9fTTW57zlVdU77uvUeAXLnT/HBHdoGtpH1glKNTXKA1OOMH//riVM1PfZ5ttprrHHpnfn/U/C9evb51lH8X26qu+31MmYm6hiXGyahWccIK7hEGsWwenngpr18LVV8OQIemFaQH84Act9+2zD9x+u5uaf+WVMGyYixiIiPkM8C3r0yfngTZGHhAU0RIUCdXA3LkwcSKcfbabEZoOW20FBxzg/m7XLn9WMXr99VCayZNPUyLceissWZJe3YkTner99rfpx4t37Aj77ttyvwjccYcT8N//3sXMhsGYMTB8eIvdnzHE9xALSzQg+D4Iun+acMghcPPNbip/Olx2WVMB/+EP0zsuXU491YURn3RSZse99loopzcxj4vVq11OlSg54QQn6MkYPdrlUwmyRnr3huuuS/98V14Jb74JV1zRJC/MB+128z1kiy3Sb94oXoLug8lsn14jjz3mDJULL3Sx4kH89a9w3HFN92Uq5hdd5OZw+PHvf8OM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\n",
      "text/plain": [
       "<Figure size 360x360 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "import torch\n",
    "\n",
    "# Create the figure and axis objects with reduced width\n",
    "fig, ax = plt.subplots(figsize=(5, 5))  # You can adjust the width (7 inches) and height (5 inches) as needed\n",
    "\n",
    "# Make sure the font is Times Roman\n",
    "plt.rcParams['font.family'] = 'Times New Roman'\n",
    "\n",
    "\n",
    "final_time_output = prediction_tensor[-20, :]\n",
    "final_out = final_time_output.detach().numpy().reshape(-1, 1)\n",
    "final_true = u[-20, :].reshape(-1, 1)\n",
    "\n",
    "# Plot the data with red and blue lines, one with dotted and one with solid style\n",
    "ax.plot(x.T, final_out, color='red', linestyle='dotted', linewidth=12, label='Prediction')\n",
    "ax.plot(x.T, final_true, color='blue', linestyle='solid', linewidth=7, label='True')\n",
    "\n",
    "# Set the axis labels with bold font weight\n",
    "ax.set_xlabel(r\"${x}$\", fontsize=26, color='black', fontdict={'weight': 'bold'})\n",
    "ax.set_ylabel(r\"${u(x, t)}$\", fontsize=26, color='black', fontdict={'weight': 'bold'})\n",
    "\n",
    "# Set the title with bold font weight\n",
    "ax.set_title(r\"${t = 0.81}$\", fontsize=26, color='black', fontweight='bold')\n",
    "\n",
    "# Set the number of ticks for x-axis and y-axis to 3\n",
    "ax.set_xticks([0, 0.5, 1])\n",
    "ax.set_yticks([-1, 0, 1])\n",
    "\n",
    "# Set tick labels fontweight to bold and increase font size\n",
    "ax.tick_params(axis='both', which='major', labelsize=20, width=2, length=10)\n",
    "\n",
    "# # Set the fontweight for tick labels to bold\n",
    "# for tick in ax.get_xticklabels() + ax.get_yticklabels():\n",
    "#     tick.set_weight('bold')\n",
    "\n",
    "# Set the spines linewidth to bold\n",
    "ax.spines['top'].set_linewidth(2)\n",
    "ax.spines['right'].set_linewidth(2)\n",
    "ax.spines['bottom'].set_linewidth(2)\n",
    "ax.spines['left'].set_linewidth(2)\n",
    "\n",
    "# Set the legend\n",
    "# ax.legend()\n",
    "\n",
    "plt.savefig('LSTM_0.81_20.pdf', dpi=500, bbox_inches=\"tight\")\n",
    "\n",
    "# Show the plot\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b7673683",
   "metadata": {},
   "source": [
    "### contour plot 80-20"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 33,
   "id": "f0a27cca",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "findfont: Font family ['Times New Roman'] not found. Falling back to DejaVu Sans.\n",
      "findfont: Font family ['Times New Roman'] not found. Falling back to DejaVu Sans.\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 1440x360 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "import torch\n",
    "import numpy as np\n",
    "import matplotlib.pyplot as plt\n",
    "from matplotlib.ticker import FixedLocator\n",
    "\n",
    "# Assuming you have defined concatenated_tensor as a PyTorch tensor\n",
    "# concatenated_tensor = torch.cat((tensor1, tensor2), dim=0)\n",
    "\n",
    "# Convert concatenated_tensor to a NumPy array\n",
    "concatenated_array = concatenated_tensor.numpy()\n",
    "\n",
    "# Define custom color levels\n",
    "x = np.linspace(0, 1, concatenated_array.shape[1])  # Replace 0 and 1 with your actual x range\n",
    "t = np.linspace(0, 1, concatenated_array.shape[0])  # Replace 0 and 1 with your actual t range\n",
    "X, T = np.meshgrid(x, t1)\n",
    "\n",
    "# Define custom color levels using the minimum and maximum from the NumPy array\n",
    "c_levels = np.linspace(np.min(concatenated_array), np.max(concatenated_array), 400)\n",
    "\n",
    "# Plot the contour with interpolated data\n",
    "plt.figure(figsize=(20, 5))\n",
    "plt.pcolormesh(T, X, concatenated_array, shading='auto', cmap='coolwarm')\n",
    "\n",
    "# Set the fontweight for axis labels to regular (not bold)\n",
    "plt.xlabel(\"$t$\", fontsize=26)\n",
    "plt.ylabel(\"$x$\", fontsize=26)\n",
    "plt.title(\"$u(x, t)$\", fontsize=26)\n",
    "\n",
    "# Set tick labels fontweight to regular (not bold) and increase font size\n",
    "plt.tick_params(axis='both', which='major', labelsize=20, width=3, length=10)\n",
    "\n",
    "# Set the fontweight for tick labels to regular (not bold)\n",
    "for tick in plt.gca().get_xticklabels() + plt.gca().get_yticklabels():\n",
    "    tick.set_weight('normal')\n",
    "\n",
    "# Set the number of ticks for x-axis and y-axis to 5\n",
    "num_ticks = 5\n",
    "x_ticks = np.linspace(np.min(T), np.max(T), num_ticks)\n",
    "y_ticks = np.linspace(np.min(X), np.max(X), num_ticks)\n",
    "\n",
    "plt.gca().xaxis.set_major_locator(FixedLocator(x_ticks))\n",
    "plt.gca().yaxis.set_major_locator(FixedLocator(y_ticks))\n",
    "\n",
    "cbar1 = plt.colorbar()\n",
    "# Set the number of ticks for the color bar with uniformly distributed numbers\n",
    "num_ticks = 5\n",
    "c_ticks = np.linspace(np.min(concatenated_array), np.max(concatenated_array), num_ticks)\n",
    "cbar1.set_ticks(c_ticks)\n",
    "\n",
    "# Set the fontweight and fontsize for color bar tick labels\n",
    "for t in cbar1.ax.get_yticklabels():\n",
    "    t.set_weight('normal')\n",
    "    t.set_fontsize(26)  # Increase the font size for color bar tick labels\n",
    "\n",
    "# Increase the size of numbers on axis and color bar\n",
    "plt.xticks(fontsize=26)\n",
    "plt.yticks(fontsize=26)\n",
    "\n",
    "# Increase the tick size and width of the color bar\n",
    "cbar1.ax.tick_params(axis='both', which='major', labelsize=30, width=3,  length=10)\n",
    "\n",
    "# Add a dotted line at t = 0.8\n",
    "plt.axvline(x=0.8, color='black', linestyle='dotted', linewidth=5)\n",
    "\n",
    "#plt.savefig('Contour_LEM_20.pdf', dpi=500, bbox_inches=\"tight\")\n",
    "plt.savefig('contour_LSTM_20.jpeg', dpi=500, bbox_inches=\"tight\")\n",
    "# Show the plot\n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "dc96e442",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "pytorch",
   "language": "python",
   "name": "pytorch"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.10"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
